当前位置:首页 > EDA > 电子设计自动化
[导读]硬件描述语言Verilog为数字系统设计人员提供了一种在广泛抽象层次上描述数字系统的方式,同时,为计算机辅助设计工具在工程设计中的应用提供了方法。该语言支持早期的行为结构设计的概念,以及其后层次化结构设计的实

硬件描述语言Verilog为数字系统设计人员提供了一种在广泛抽象层次上描述数字系统的方式,同时,为计算机辅助设计工具在工程设计中的应用提供了方法。该语言支持早期的行为结构设计的概念,以及其后层次化结构设计的实现。这在设计过程中,进行逻辑结构部分设计时可以将行为结构和层次化结构混合起来;为确认正确性还可以将描述进行模拟,并提供一些用于自动设计的综合工具。因而Verilog语言为设计者进行大型复杂数字系统的设计提供了途径。超大规模集成电路设计的典型流程如图1所示。

 

  本文将以顺序状态逻辑有限状态机的设计为例介绍用Verilog语言设计数字电路的一般过程。

  1 设计规范与设计构思

  电子设计工程师在设计过程中不可避免地会遇到设计可执行特殊操作序列电路的工作,如用来控制其他电路进行操作的控制器,而有限状态机(Finite Status Machine,FSM)是设计这种能执行特殊操作序列电路的一种非常有效的模型。FSM的结构通常由当前状态寄存器、下一状态逻辑和输出逻辑三部分构成。FSM也有很多种模型,本文仅以顺序状态逻辑FSM的设计为例来说明用Verilog进行集成电路设计的一般设计过程。为简单起见,本设计只设计了包含有8个状态的顺序状态逻辑FSM。8个状态分别为One、Two、ThreeA、ThreeB、ThTeeC、Dummy、Four、Five。开始状态为One,各状态之间的转换关系如图2所示。

 

  该顺序状态逻辑FSM的功能及要求如下。

  (1)同步复位信号Reset至少要维持4个时钟周期的高电平信号,以保证状态机进入状态One。

  (2)当状态机在5个状态中循环时,A、B、C 3个输入按优先级使状态机从状态Two进入相应的状态ThreeA、ThreeB、ThreeC、Dummy。

  (3)复位后,如果A持续为高电平,则输出信号Y1的周期为时钟周期的5倍,且高电平维持的时间为1个时钟周期。

  (4)如果A、B维持为低电平,而C维持为高电平,则输出信号Y3的周期为时钟周期的5倍,且高电平维持的时间为1个时钟周期。

  (5)如果A维持低电子,而B维持高电平,则输出信号Y2与Y1和Y3不同,只维持1个时钟周期的高电平。因为当状态机进入状态ThreeB时,信号BeenInState3B被设置为1,而该信号就会禁止状态机再次进入状态ThreeB,直到另一个复位信号出现为止。

  以上是一个时序电路的设计,如何保证正确的时序是设计的关键。根据设计要求,该状态机至少应该有8个端口:5个输入端口(A、B、C、Reset、Clock),3个输出端口(Y1、Y2、Y3)。其中输入端A、B、C和Reset信号均由时钟边缘进行触发,Reset具有最高的优先权,而输入信号A、B、C的优先权则依次递减。

  该顺序状态逻辑有限状态机的端口示意图和设计构思图分别如图3和图4所示。

  2 用Verilog语言编写源代码

3 源代码功能仿真

  通常EDA(Electronic Design Automation)工具都为设计人员提供了测试平台,以验证数字电子系统设计在功能和时序二方面的正确性。不同的EDA工具提供的平台会有差别,但是它们都可以实现对被测试对象加载测试信号,并且能够通过波形输出或文件记录输出等方式来方便地进行观察及比较仿真结果。而测试用的激励代码通常是由设计人员自己编写。为了便于清楚地观察、比较仿真结果,本设计对一个340ns时间段进行了模拟,且测试代码考虑了各种可能出现的激励情况,具体的测试代码如下:

  4 逻辑综合

  逻辑综合的目标是将寄存器时间逻辑(RTL)的HDL(HardwareDescriptionLanguage)代码映射到具体的工艺上加以实现,因而从这一步开始,设计过程与实现工艺相关联。实现自动综合的前提是要有逻辑综合库的支持。综合库内部包含了相应的工艺参数,最典型的有:门级延时、单元面积、扇入扇出系数等。设计一个电子系统,总有相应的设计目标,如时钟频率、芯片面积、端口驱动能力等。自动综合工具将这些设计指标作为综合过程的约束条件,在给定的包含工艺参数的综合库中选取最佳单元,实现综合过程。 与模拟工具一样,目前有许多优秀的综合工具借助现有的综合库能将Verilog语言源代码进行综合,转化成门级电路图,并且可以根据设计者施加的约束条件对电路进行优化,生成相应的门级网表。Synopsys公司的DC(DesignCompiler)就是一个比较好的逻辑综合工具。DC逻辑综合与优化后得到的电路图如图6所示。

 

  5 门级仿真

  综合之后所得到的电路是否仍能满足设计要求,同样需要通过仿真来确定,逻辑综合之后的仿真称为门级仿真。门级网表是使用门电路以及电路之间的连接来描述电路的方式。门级仿真与RTL仿真不同的是,门级仿真包含了门单元的延时信息,因而门级仿真需要相应工艺的仿真库支持。把综合后得到的网表中门级延时参数提取出来后,对被测试对象进行反标,然后再进行仿真,得到的结果如图7所示。

 


  从门级仿真所得到的波形图输出结果来看,本设计在功能与时序上是符合设计要求的。

  6 后端设计

  门级仿真通过后,接着就是进行版图规划;版图规划好以后就进行布局与布线;在版图的布局布线都已确定后,可以从版图中进一步提取出连线电阻、电容等参数。

  生成版图之后,把从版图中提取出的参数反标到门级网表中,进行包含门延时、连线延时的门级仿真,称作后仿真。这一步主要是进行时序模拟,如果时序不能满足设计要求,通常需要修改版图的布局与布线、逻辑综合的约束条件,有时也可能回到RTL描述、行为级描述甚至设计规范或算法实现上加以调整。版图得到验证后就可以交付生产厂家做到硅片上。

  7 结束语

  由以上的设计过程可以看出,Verilog语言的最大特点是简洁、灵活、高效,其编程风格和C语言极其相似,所以很容易学习和掌握。同时,Verilog语言还具有底层描述方面的优势,而且其设计方法与具体工艺无关,这就使得用Verilog语言编写的功能模块具有很高的可重用性。随着集成电路的深亚微米制造技术、设计技术的迅速发展,集成电路已进入片上系统(System on a Chip,SoC)设计时代。SoC设计的最大挑战之一是IP(Intellectual Property)模块的有效使用和重用。IP模块的重用,除能缩短SoC芯片设计的时间外,还能降低设计和制造成本,提高可靠性。在SoC设计中,可重用的IP模块越多,设计过程的效率就会越高。由此可见,Verilog语言在SoC设计中可以发挥更大的作用。因此,能用Verilog语言进行电路设计是每个电子设计工程师必须掌握的基本技术。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

● 颠覆性的专用软硬件加速平台;利用GPU和CPU计算以及专有软件算法,提高准确度、速度和规模的同时,带来高达100倍的设计效率提升; ● 与传统HPC相比,支持GPU-resident模式的求解器可将仿真能效显著提高2...

关键字: AI 仿真

● 热、应力和电子散热设计同步分析,让设计人员可以无缝利用ECAD和MCAD对机电系统进行多物理场仿真; ● 融合FEM和CFD引擎,应对各种热完整性挑战——从芯片到封装,从电路板到完整的电子系统; ● Celsius...

关键字: AI 仿真

具有高采样率的泰克任意波形发生器(AWG)是功能多样且强大的仪器,可以提高脉冲激光实验的质量和效率,为以前所未有的精度和灵活性创建和操作光脉冲提供了多种可能性。

关键字: 仿真 测试测量

● 四态硬件仿真应用可加速需要X态传播的仿真任务; ● 实数建模应用可加速混合信号设计软件仿真; ● 动态功耗分析应用可将复杂SoC的功耗分析任务加快5倍。

关键字: 仿真 SoC

目前,中国市场HiL技术主要应用于汽车、航空航天、国防、能源、电力电子等产业,2016年-2028年市场规模复合增长率达18.5%,预计2028年中国HiL模拟行业市场规模达到273亿元,其中尤以汽车行业HiL应用市场规...

关键字: 仿真 汽车电子

在今年的泰克创新论坛上,我与新思科技(Synopsys)的Madhumita Sanyal和安立公司(Anritsu)的Hiroshi Goto一起讨论了最新PCIe版本面临的挑战,以及PCIe 7.0可能面临的挑战。

关键字: 仿真

近日,第11届EEVIA年度中国硬科技媒体论坛暨产业链研创趋势展望研讨会在深圳召开,上海合见工业软件集团产品工程副总裁孙晓阳在会上发布了主题为“把握芯片设计关键核心,助力国产EDA新格局”的演讲。

关键字: 芯片设计 仿真 验证 chiplet 合见工软 IP

COMSOL 电池主题日系列活动邀请了多位行业专家,分享多物理场仿真在电池行业中的应用和优势,共同探讨电池及电化学储能技术未来发展的无限可能。 上海2023年9月21日 /美通社/ -- 2023年9月20日,全球领先...

关键字: 仿真 电池技术 COMSOL 电化学

四家在HiL仿真行业内的“先行者”,凭借其先发优势和核心技术,已经稳占市场主导地位,成为了业界公认的“四大龙头”。他们分别有什么特点?

关键字: 仿真 测试测量

VHDL (VHSIC Hardware Description Language),是一种硬件描述语言,可以用于描述电路的结构、功能和行为等,并进行仿真和验证。VHDL具有规范性、综合性和模拟性等特点,已被广泛应用于数...

关键字: 单片机 EDA技术 仿真
关闭
关闭