当前位置: 首页 > news >正文

草图网站千锋教育培训机构就业率

草图网站,千锋教育培训机构就业率,365做网站,中信建设有限责任公司电话说明:该专栏"RTL建模笔记"是《RTL Modeling with SystemVerilog for Simulation and Synthesis》的翻译;该笔记略过了第一章第一小节中背景介绍内容,以及第二小节前面部分的门级、RTL级建模介绍,对于后续学习不影响。 …

说明:该专栏"RTL建模笔记"是《RTL Modeling with SystemVerilog for Simulation and Synthesis》的翻译;该笔记略过了第一章第一小节中背景介绍内容,以及第二小节前面部分的门级、RTL级建模介绍,对于后续学习不影响。

1.行为级和事务级建模

        SystemVerilog过程块可用于在比RTL更高的抽象层次上进行建模,这种抽象层次的模型通常被称为行为级模型(也称为总线功能模型或算法模型)。由于RTL级和行为级模型都使用过程块,因此它们的外观可能非常相似。

行为级模型与RTL级模型的区别在于两个方面,或者两者兼而有之:

  • RTL过程块会在一个时钟周期内执行其编程语句,如果是组合逻辑,则可能在零个时钟周期内完成。而行为过程块可能需要任意数量的时钟周期来执行其语句。
  • RTL模型必须遵循严格的语言限制,以便能够被RTL综合编译器所综合。而行为模型则可以充分利用完整的System-Verilog语言。

        高层次的抽象是事务级建模。事务模型通常用于验证代码,并且通常使用 SystemVerilog 的面向对象编程结构进行建模。 

        行为和事务的抽象级别无法由RTL综合编译器进行综合。

2.定义SystemVerilog可综合子集

        由于缺乏 SystemVerilog综合标准,不同综合编译器支持 SystemVerilog 标准的子集不同,这意味着在设计阶段需要针对不同的编译器进行适配。工程师在编写用于综合的模型时需格外小心,要参考将要使用的综合编译器的文档,并遵循该编译器的语言子集。在一种综合编译器编写的模型可能需要进行修改,才能与另一种综合编译器配合使用。

        本书定义了SystemVerilog的一个子集,该子集可与市面上大多数的SystemVerilog RTL综合编译器兼容。设计工程师可以放心,只要遵循本书中所述的语言限制和编码准则,模型便可在任何主要的SystemVerilog综合编译器上得到综合。

3.ASIC和FPGA建模

        ASIC和FPGA技术的完整定义超出了本书的范围,本书的主题是与SystemVerilog语言相关的正确数字逻辑建模风格。

3.1 标准ASIC元件

        ASIC是Application Specific Integrated Circuit的首字母缩写,IC包含不同的功能,ASIC 的设计宗旨是执行特定任务(因此得名“应用专用芯片”),控制器、音频格式转换和视频处理是适合由 ASIC执行的特定应用任务示例。为了执行一般性操作以及其特定任务,ASIC还可包含一个或多个嵌入式处理器。带有嵌入式处理器的 ASIC通常被称为片上系统(SoC,system on chip)。

         大多数ASIC技术采用标准单元,即预先设计好的逻辑块,由一到数个逻辑门组成。一个SIC单元库可能包含数百个标准单元,例如AND、NAND、OR、NOR、异或、异或非、二选一多路复用器、D型触发器、锁存器等。每个单元都具有明确的电气特性,如传播延迟、设置时间和保持时间,以及电容。

        设计ASIC的流程包括从库中选取合适的单元,并将它们连接起来以实现所需的性能。在整个过程中会用到软件工具。ASIC设计的典型流程如下图所示。

上图的步骤是:

  1. 第一步指定设计的预期功能。
  2. 所需的功能在模型的抽象RTL级别上进行建模。在这个阶段,重点是功能,而非物理实现。
  3. 仿真用于验证功能。该书第1.5节(第17页)详细讨论了仿真的内容。
  4. 综合过程用于将RTL功能映射到目标ASIC类型的相应标准单元上。综合的输出称为门级网表。综合过程将在第1.6节(第31页)中作更详细的描述。
  5. 通过仿真逻辑等价检查器(一种形式验证方法),可以验证门级实现在功能上等同于RTL功能。--> 现在常用形式验证工具做等价验证,常用工具为s家fmt和c家lec。
  6. 时钟树综合用于将时钟驱动器均匀地分布到整个设计中。通常会使用扫描链(scan chain)插入工具来增强设计的可测试性。
  7. 布局和布线软件会计算如何在实际的硅芯片上布局单元,并规划互连走线。布局和布线软件的输出是一个图形数据系统文件(GDSII)文件。GDSII是一种二进制格式,其中包含有关几何形状(多边形)和其他数据的信息,这些信息对于在硅芯片上实际构建IC是必要的。
  8. 通过执行设计规则检查(DRC),确保将由该代工厂制造的ASIC所遵循的所有规则都已得到遵守,例如栅极扇出负载。
  9. 进行静态时序分析(STA)以确保设置/保持时间得到满足,同时考虑到互相作用的net和时钟树偏移的延迟影响。
  10. 最后将GDSII文件和其他数据发送给负责制造ASIC的代工厂。将这些文件交给代工厂的过程被称为“tapeout” ASIC,因为在ASIC设计的早期阶段,人们使用磁带将文件发送给代工厂。

 3.2 FPGA

        FPGA 是现场可编程 门阵列(Field Programmable Gate Array)的缩写,FPGA是一种集成电路,包含一定数量的逻辑块,这些逻辑块在IC制造完成后可以进行配置(而ASIC的内容和布局必须在制造之前确定)。FPGA所包含的功能性无法与 ASIC 相媲美,且运行时钟速度较慢,这在 RTL级别的设计中是重要的考量因素。但FPGA技术的最新进展显著缩小了 FPGA和 ASIC 之间的差距。总的来说,FPGA 可以用于实现与ASIC 相同的功能。

        FPGA包含许多称为可配置逻辑块(CLB)的小型逻辑组件的阵列。一些FPGA厂商将这些块称为逻辑阵列块(LAB),一个典型的CLB可能包含一个或多个查找表(LUT)和一些选择器(MUX),和一个存储元素,例如D型触发器。大多数FPGA中的查找表是小型RAM,编程时使用逻辑运算,如AND、OR和XOR。从LUT中选择所需的操作允许CLB以多种方式使用,从简单的"与"或"异"门到更复杂的组合功能。某些FPGA中的CLB可能还具有其他功能,例如加法器。MUX可使组合结果直接由CLB输出(异步输出)或存储在存储单元中((同步输出)。

        FPGA的制造过程中会包含一个由数百或数千个CLB单元组成的阵列,以及可配置的互连结构,这些互连结构可以被“编程”成所需的CLB单元配置。FPGA还包含I/O端口,这些端口可以配置为连接到CLB阵列的任意一列或一行。
下图显示了一个复杂FPGA的典型设计流程。

        FPGA设计流程的前端与ASIC类似,但后端有所不同。与ASIC设计流程相比,FPGA设计流程后端的主要区别在于FPGA的放置和布线。对于ASIC,放置和布线软件决定了IC的制造方式。而对于FPGA,综合放置和布线软件则决定了预先制造的IC将如何进行编程。本书将重点介绍前端步骤2和3,即RTL建模和模拟,这是ASIC和FPGA设计之间差异最小的部分。

3.3 适用于ASIC和FPGA的RTL编码风格

        理想情况下,相同的RTL代码可以用于针对ASIC或FPGA进行开发:在RTL级别进行工作时,工程重点在于设计和验证功能,而无需考虑具体的实现细节。综合编译器的职责是将RTL功能映射到特定的ASIC或FPGA技术上。

        大多数(但不是全部)RTL代码都能在ASIC和FPGA上得到同样良好的综合。但这一概括性结论也存在例外。RTL模型的某些方面需要考虑设计是将在ASIC还是FPGA上实现。这些方面包括:

  • reset,大多数ASIC单元库都包含同步和异步复位触发器。设计工程师可以使用被认为最适合设计的复位类型来编写RTL模型;一些FPGA的灵活性较差,仅具备一种类型的复位触发器(通常是同步的)。虽然综合编译器可以将具有异步复位的RTL模型映射到门级同步复位,或者反之,但需要额外的逻辑门。许多FPGA还支持全局复位功能和上电复位触发器状态,这是ASIC所不具备的。第8章第8.1.5节(第286 页)更详细地讨论了建模复位。
  • Vector sizes(矢量大小),对于最大矢量宽度和矢量操作,ASIC具有相当程度的灵活性,处理大型矢量时,复杂的操作将需要大量的逻辑门,但大多数ASIC中使用的标准单元架构能够支持这些操作。FPGA在这方面则较为受限。预定义的CLB数量及其在FPGA内的布局,可能限制了对大型矢量进行复杂操作的能力,这要么是因为可用的CLB数量有限,要么是因为在CLB之间进行互连的布线复杂性所致。ASIC和FPGA之间的这种差异确实意味着,即使是在RTL级别的抽象层面,设计工程师也必须考虑到设备的局限性,以确保实现的功能与之相匹配。

        本书中所提供的多数示例、编码风格和指南,同样适用于ASIC和 FPGA 设计。对于针对 ASIC或 FPGA 时可能影响 RTL编码风格的少数特殊情况,书中有所特别说明。

http://www.tj-hxxt.cn/news/55236.html

相关文章:

  • 开发者软件下载宁波seo整体优化
  • 企业网站建设 南通温州seo按天扣费
  • 建设一个电商网站的流程百度网盘app下载安装电脑版
  • 做网站设计需要办理icp百度一下浏览器
  • 徐闻网站建设公司百度竞价被换着ip点击
  • 进服务器编辑网站怎么做怎么买到精准客户的电话
  • 网站是做百度快照推广好网络推广有哪些常见的推广方法
  • wordpress自己电脑装单页网站怎么优化
  • 品牌网站建设3a小蝌蚪今日新闻头条
  • 网站付费功能描述种子搜索引擎torrentkitty
  • 台州网站建设开发下载应用商店
  • 精益生产网站开发方案百度一下官方网页
  • 域名已买 可以找其它人做网站吗网络科技公司骗了我36800
  • 织梦模板大气网站建设类网站模板下载网络营销教程
  • 淘宝客做网站好还是建群号企业推广宣传方案
  • session WordPress河南seo技术教程
  • 北京做网站哪家公司最好怎么让百度搜索靠前
  • 网站流量对比苏州百度推广服务中心
  • 家居企业网站建设讯息新手如何学seo
  • 中国最好的建筑设计公司泰安网站优化公司
  • 建筑师网站有哪些查询网站备案信息
  • WordPress网站转HTPPS太原自动seo
  • 网络培训心得体会总结快速优化系统
  • 建站网站是什么网站怎样做推广
  • 坪山区住房和建设局网站seo优化工具大全
  • 深圳网站建设公司jm3q产品关键词大全
  • 企业大型网站开发建站教程详解站长工具
  • 网站后台管理系统后缀网站推广公司推荐
  • 广州建设外贸网站推广标题怎么写
  • 如何查看网站开发单位南宁seo计费管理