设计与验证-Verilog HDL.pdf

所需积分/C币:49 2019-05-23 11:23:28 13.85MB PDF
收藏 收藏
举报

本书以实例讲解的方式对HDL语言的设计方法进行介绍。全书共分9章,第1章至第3章主要介绍了Verilog HDL语言的基本概念、设计流程、语法及建模方式等内容;第4章至第6章主要讨论如何合理地使用Verilog HDL语言描述高性能的可综合电路;第7章和第8章重点介绍了如何编写测试激励以及Verilog的仿真原理;第9章展望HDL语言的发展趋势。本书配有一张光盘,光盘中收录了书中示例的工程文件、设计源文件及说明文件等。另外为了配合读者进一步学习,光盘中还提供了Verilog 1995和Verilog 2001这两个版本的IEEE标准文献,读者可以从中查阅Verilog的语法细节。本书围绕设计和
对于一些相对复杂的示例,说明文件中给出了小例的详细信息和操作指南,而对丁一些 简单的实例,则只给出了源代码 另外,为了配合读者进一步学习、光盘中还提供了veg1995和 erilog2001这两 个版本的IEFF标准文献,读者可以从中查阅Ⅴerlg的语法细 本书约定 为了方便读者阅读,本书还没计了4个小图标,这些图标的含义如下。 嶽 行家指点:用于介绍使用经验和心得,或罗列一些童委的概念 少注意事项:用于提醒读者应该注意的河题 多学一招:用子个绍实现同一功能的不同方法 "操作实例:用于引岀一个操作题目和相应的一组操作步骤 本书第1、4、5、6章由王诚编写,2、3、7、8、9章由吴继华编写。由于作者水平 有限,书中难兔会有疏漏,敬请读者批评指正。 感谢您选择了本书,也请您把对本书的意见和建议告诉我们。 EDA先锋工作室网站htp: WWw.edacn.net EDA先锋工作室 2006年7月 录 wTm国w汁 第1章HDL设计方法简介 1.1设计方法的变迁 I a 12 Verilog语言的特点 121 Verilog的由来 ]22HDL与原理图 123 Verilog和vIDL 124 Verilog和C话言 13HDL的设计与验证流程 3457 l4问葱与思考. 第2章 Verilog语言基础 21Top-own和 Bottom-uUp… 22 verilog的3种描述方法 22.』实例 ■■■■■■■导甲■司甲看甲唱l甲■争甲甲甲lp中dp甲即甲q_dl甲看lp唱■p 2223种描述方法 23基本词法. 14 24模块和站口 15 25编译指令 hI▲4I▲kbI!白·卜btb■r■■■b■■n■■■t ,■■■■■■罪 甲·自即·甲·lp甲lpdp咱即咱p电唱p山dp山ql山看l自山自I由自自山山自日m曲■■ h6 2.6逻辑值与常量… 1d山d·4 17 26.l逻辑值. P D 2.62常虽 h如nbnb咖口 27变量类型 27.1线网类型 272寄存器类型 273变量的物理含义 20 274驱动和赋值 2,8參数, ■■+■■贔■■吾■☆■昏h山■■山■p 22 29 Verilog中的并发与顺序 T■ ■■■■■■■■■■■■■■■备 ■最 22 210操作数、操作符和表达式 .23 2Q.操作符 ■平■晋十d晋十■b+■■■旷留 2.02二进制数值 甲■■甲冒■暑号山■昏山备k山h■■唱 26 2.103操作数 26 2l1系统任务和系统函数 28 211.1显示任务… ■●口曲加●看p上pP■p■和即■■■■pq■唱■■ 8 2.112文件输入出任务 28 2,113其他系统任务和系统函数 29 212小结 29 213问题与思考 自bmnm■tb■ h.■■,甲卓.甲◆甲dp罪,·pqlP“pdl即 Add 29 第3章描述方式和设计层次 p卩■ 31 31描述方式 ■■■自lL■■I口_■■ L■■L■L 31 32数据流描述, 321数据流 322连续赋值语句 3.23延时 2.4多驱动源线网 34 33行为描述. 3.3.1行为描述的语句格式 甲■■D早■聊甲■■■pqd山看■看 332过程赋佰语句…… 333语句组, …43 334高级编程语句 L↓·▲ 34结构化描述. 341实例化模块的方 52 342参数化模块 35设计层次 351系统级和行为级 57 352RTL级 日··口日日日日P日月日甲■■吾■晶■晶士■■mb晶血●甲ppnb聊■画血 59 353门级… 3.54晶体管级 r罪看■司 355混合描述 ·日即日日日日日日日日月日口日■早■■晶■昏■■矿日聊日罪日n 血■鲁唱■邕聊■血自I 60 36实例:CRC计算与校验电路 士■■备十■■口bmb ■■p看导 60 3.6.1CRC10校验,行为级 36.2cRC10计算电路,R级 n52 3.7小结111111 1■■dd命旷■■『 ■日■ 38问题与思考 鲁中唱目即自自血看日早 第4章RTL概念与RIL级建模 ■■日「■十 165 41RTL与综合的概念 日目聊具如目P自日日日日日日日}日}P■p如■_p画甲 65 42RTL级设计的基本要素和步骤 6> 43常用的RTL级建模 甲■t 67 2 4.3.1阻塞赋值、非阻塞赋值和连续赋值… 67 432寄存器电路建模…. 68 4.33组合邈辑建模 434双问端凵与三态信号建模… 72 435Mwx建模 73 436存储器建模 74 437简单的时钟分频电咚 43.8串并转换模 77 439同步复位和异步复位 43.H0使用case和 if else语句建模. l!P■ n81 4311可综合的 Verilog语法f集 87 44设计实例:CPU读写PLD寄存器接口 45小结 4d·4l 山?甲即看甲看即看目昌血目看学 92 46问题与慧考 ■『·「T·■昌■■l■■ 日口即平 ■日早 92 第5章RTL设计与编码指导 般性指导原则 ■·■■■■■『hmn·m■n甲自日如·目· ■十■■■bd山 93 511面积和速度的平衡与互换原 51.2硬件原则 103 513系统原则 ■■早■■山■十■冒b■山h■“bmm L≠■● 105 52同步设计原则和多时钟处理 107 521同步设计原灯… 107 52,2亚稳态 ■個 109 523异步时钟域数据同步, ■■■日■駟■■中■鲁■■血自■血目卩■■〖■■↓■■毛↓L↓ 53代码风格 13 531代码风格的分类 113 532代码风格的重要性 ↓ 113 54结构层次设计和模块划分 ,…,14…1…,114 541结构层次化编妈( Hierarchical Coding) 114 54.2模块划分的技巧( Design Partitioning) 组合逻辑的注意事项 ■山■l■q甲·d唱■D·■画■ 116 55 i always组合逻辑信号敏感表…1 5.5,2缃合逻辑反馈环路 T ■●咖■中■P■■自■·血■擊■■■山■普1■ 553脉冲产生器 554慎用锁存器( Latch)… ■■司司■ fI9 56时钟设讨的注意事项… 120 561內部逻辑产生射时钟 20 5.6.2 Ripple Counter ■■■■t 12 5.63时钟选择 564门控时钟 甲ltII 21 S65时钟同步使能端 P1;十1『;d1mm.『■IP 122 57RTL代码优化技巧 123 571使用 Pipelining玻术优化时序, 123 572模块复用与资源共享 123 573逻辑复制 125 574香农扩展运算 27 58小 129 59问题与思考 …130 第6章如何写好状态机 131 61状态机的基本概念 日即日日日q晋严■昏甲昌如■■如 131 61状态机是一种思想方法, 13【 612状态机的某本要素及分类 133 63状态机的某本描述方式…… 133 62如何写好状念机 I■4+昏 134 521评判FSM的标准 n…134 622RTL级状态机描述常用的语法 35 623推荐的状态机描述方法 138 624状态机设的其他技巧 …151 63使用 Synplify Pro分析FSM 154 64小结 157 65问题与思考 15了 第7章逻辑验证与 Testbench编写…… 7.1概述 寻昌 159 71,1仿真和验证 159 7.12什么是 Testbench 160 72建立 Testbench,仿真设计 …161 7.2]编写仿貞激励 162 722搭建仿真环境 i72 723确认仿真结果 ,173 724編写 Testbench时需要注意的问题 P号甲P亡音日“如响甲司甲唱■咱日A画■ 175 73实例:CPU接囗仿真 7.3.1设计简介 血日日血日甲即日甲q■血自■即v日日甲司■番山 73.2…种 Testbench 鲁■日音卓日导甲导血国命号甲 x,178 733另外一种 Testbench 182 74结构化 Testbench… 74b任务和函数 A n4l·a···h●■t ■q·■■由看■甲■■幽自口电日■d由看山 血Lm■ 74,2总线功能模型(BFM) 184 74.3测试套具( Harness) P■■日■■■■「■甲P■■十■旱■■旷矗hm■■■■■目■■■■ 185 744测试用例( Testcase), 185 745结构化 Testbench. ■■■■■■■「「■d十■口■■山■ 186 75实例:结构化 Testbench的编写. 188 751单顶层 Testbench… 日鲁日■p咖导■由日血目命m日日着目旱 日日日中·血b日干日■ 188 752多顶层 Testbench 191 76扩展 Verilog的高层建模能力 192 77小结 4P「?P号hb ==F?■ 78问题与思考…… ·■日早■冒导v■士b+■am■■m聊目D卓●日甲如面血■t 第8章ⅴ erilog语义和仿真原理 Il■■■;Tn■ 195 8!从一个问题说起 ,495 82电路与仿真 如 821电路是并行的 甲日■bD·■·目由?■冒 196 822 Verilog是并行语言 197 823viog仿真语义 197 83仿真原理 ■↓■■■暑4:d1b司咱■ 唱■幽p■即q聊目■昏—看 19g 831 verilog的仿宾过程 832仿真时间… 20 833事件飘动 203 834进程 ··平■平甲b4白d山■甲甲甲目◆目■中日p印日聊日■看4■山 203 83.5调度… 山■■山+■■■ 204 836时序掉制( Timing Control)… 205 837进稞,事件和伤彭时间的关系… ■■■↓■↓↓ 205 838 Verilog诘言的不确定性 自自自号■号 山■吾■ 205 84分层事件队列与仿真参考模型 206 84.1分层事卅队列 206 84.2仿真参考模型 rA『『『卩p4A即 PBF P 8.5时序模型与延时 …107 8.51仿真模型( Simulation Model 207 8.52时序模型〈 Timing Model) 208 853案例分析 :208 854在 Verilog语言屮增加延时 210 86再谈阻塞与非阻塞赋值 213 861本质 213 862案例分析 甲h■■血普番血■昏号平■干P号号日·血 216 87如何提高代码的仿真效率 219 88防止仿真和综合结果不一致… 11219 89小结 20 810问题与思考 吾晶晶吾自自自自 220 第9章设计与验证语言的发展趋势 91设计与验证语言的发展历程 ■●甲p 911HDL语言 21 9L2CC++和私有的验证语言 22 9L3 Acceler和IEEE的标准化工作 ? 1口山鲁■山 斷血■画■上画冒■ 92硬件设计语言的发展现状和走向 ■■■■■■■■■■■■■■■■■■冒■■■■■■幽加口血加會山會山自■山自■幽■亡自■鲁■亡自■斷曲1斷曲斷血■■鲁■幽■曲1 223 92LFDL的竞争, 223 922…些尝试 ■·個會山■斷音會音督■■會十■目斷個■『督■倡■「■冒■T 923下一代的Ⅴ erilog语言 n口_曲mmpm冒m盘n山血+d曲山d自t山血 223 924 SystemC…,…, 『■·4昏号干I甲4I1I甲414「1■干■甲■晕甲量甲■量平■甲■■晕■甲号甲■甲P号甲P号甲■■早P号日 224 93验证语言的发展现状和走向… ■1「1甲I+4I哥4I41昏订昏4■■晕甲昏甲■甲量昏国平■晕甲「甲甲■甲量甲号甲冒昏■甲晋早■早曾 225 93,1验诎方法 225 932HⅥL标准化进程 25 933HYL的新需求 山It■血4t 226 94总结和展望 甲唱导看p甲看p甲d甲dp 126 95小结 ■■●日D导 226 96问题与思考, …4………226 附录 Verilog关键字列表 227 6 第1章HDL设计方法简介 本章重点介绍数字系统的建模和IDL语言的基本概念,并引入了主流的设计和验证流 程 本章主要内容如下: 设计方法的变迁 · Verilog语妄的特点; HDL时设计与验证流程。 11设计方法的变迁 随着微电子设计技术的发展,数字集成电路已经从电子管、晶体管、小规模集成电 路、超大规模集成电路(ⅥLSC〉逐步发展到今天的专月集成电路(ASIC)。人们在工作和 生活亡用到的一些产品,如计算机、手机、数字电视等都运用了复杂的专用数字集成电路, 而数字逻辑器件也从简单的逻辑门发展到了复杂的SOC( System On Chip,片上系统),提 供了对复杂系统的灵活支撐 随着数字电路系统的不断发展,系统的逻辑复杂度与规模日益增加,数字系统的设计方 也随之不断演进。在早期简单的门逻辑设计阶段,电子辅助设计(EDA)L具的应用范 用十分有限,工程师们习惯于使用卡诺图简化设订,然后通过面包板等实验系统验证设计; 在系统相对复杂以后,工程师们又开始借助EDA工月通过原理图描述数字系统,原理图由 元件库中的元件构成,使用EDAL具可以对原理图进行仿真并分析其性能:当数字系统发 展到ASLC与可編程逻辑器件(PLD)设计阶段后,原理图不利扌移植,维护起来费时费力 等缺点步显现,这时一种拙象度更高,运用起来更灵活的设计方式—硬件描述语言 HDL, Hardware Description Language)应还而生。 使用HDL语言可以从算法、系统级( System Level)、功能模块级( Function Model Level)、行为级( Behavior level)、寄存器传输级(RrL, Register Transfer Level)、门级 ( Gate Level)和开关级( Switch level)等不同层次攉述数字电路系统,然后通过EDA工 具综合、仿真并实现该系统。叮以说IDL谔言的出现是数字系统设计方法的一个重大飞 跃 由于EDA工具的不断推陈出新,又引发了数字电路系统设计方法的另一个里大飞跃。 当数字系统发展到ASIC和PLD设讦阶段之后,人们需要直接描述CMOs的开关电路或门 级电路。这种电路设计量庞大,仿真速度也非常慢,如果用开关级或门级方法播述当今系统 门数量为千万门级的FPGA( Field Programmable Gate Array,现场可编程门阵列),结果是 不可想象的。这时人们就希望能够使用HDL语言直接从更高的层次描述电路,然后使用

...展开详情
试读 127P 设计与验证-Verilog HDL.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
抢沙发
一个资源只可评论一次,评论内容不能少于5个字
  • 技术圈认证

    用户完成年度认证,即可获得
关注 私信 TA的资源
上传资源赚积分or赚钱
最新推荐
设计与验证-Verilog HDL.pdf 49积分/C币 立即下载
1/127
设计与验证-Verilog HDL.pdf第1页
设计与验证-Verilog HDL.pdf第2页
设计与验证-Verilog HDL.pdf第3页
设计与验证-Verilog HDL.pdf第4页
设计与验证-Verilog HDL.pdf第5页
设计与验证-Verilog HDL.pdf第6页
设计与验证-Verilog HDL.pdf第7页
设计与验证-Verilog HDL.pdf第8页
设计与验证-Verilog HDL.pdf第9页
设计与验证-Verilog HDL.pdf第10页
设计与验证-Verilog HDL.pdf第11页
设计与验证-Verilog HDL.pdf第12页
设计与验证-Verilog HDL.pdf第13页
设计与验证-Verilog HDL.pdf第14页
设计与验证-Verilog HDL.pdf第15页
设计与验证-Verilog HDL.pdf第16页
设计与验证-Verilog HDL.pdf第17页
设计与验证-Verilog HDL.pdf第18页
设计与验证-Verilog HDL.pdf第19页
设计与验证-Verilog HDL.pdf第20页

试读结束, 可继续阅读

49积分/C币 立即下载 >