海思半导体Asic.doc_第1页
海思半导体Asic.doc_第2页
海思半导体Asic.doc_第3页
海思半导体Asic.doc_第4页
海思半导体Asic.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一集成电路设计前端流程及工具。1. 设计输入1) 设计的行为或结构描述。2) 典型文本输入工具有ultraedit-32和editplus.exe.。3) 典型图形化输入工具-mentor的renoir。4) 我认为ultraedit-32最佳。2. 代码调试1) 对设计输入的文件做代码调试,语法检查。2) 典型工具为debussy。3. 前仿真1) 功能仿真2) 验证逻辑模型(没有使用时间延迟)。3) 典型工具有mentor公司的modelsim、synopsys公司的vcs和vss、aldec公司的active、cadense公司的nc。4) 我认为做功能仿真synopsys公司的vcs和vss速度最快,并且调试器最好用,mentor公司的modelsim对于读写文件速度最快,波形窗口比较好用。4. 综合1) 把设计翻译成原始的目标工艺2) 最优化3) 合适的面积要求和性能要求4) 典型工具有mentor公司的leonardospectrum、synopsys公司的dc、synplicity公司的synplify。5) 推荐初学者使用mentor公司的leonardospectrum,由于它在只作简单约束综合后的速度和面积最优,如果你对综合工具比较了解,可以使用synplicity公司的synplify。5. 布局和布线 1) 映射设计到目标工艺里指定位置 2) 指定的布线资源应被使用3) 由于pld市场目前只剩下altera,xilinx,lattice,actel,quicklogic,atmel六家公司,其中前5家为专业pld公司,并且前3家几乎占有了90的市场份额,而我们一般使用altera,xilinx公司的pld居多,所以典型布局和布线的工具为altera公司的quartus ii和maxplus ii、xilinx公司的ise和foudation。4) maxplus ii和foudation分别为altera公司和xilinx公司的第一代产品,所以布局布线一般使用quartus ii和ise。6. 后仿真1) 时序仿真2) 验证设计一旦编程或配置将能在目标工艺里工作(使用时间延迟)。3) 所用工具同前仿真所用软件。7. 时序分析1) 一般借助布局布线工具自带的时序分析工具,也可以使用synopsys公司的 primetime软件和mentor graphics公司的tau timing analysis软件。8. 验证合乎性能规范1) 验证合乎性能规范,如果不满足,回到第一步。9. 版图设计1) 验证版版图设计。2) 在板编程和测试器件。 二FPGA和ASIC的概念,他们的区别现场可编程门阵列(FPGA)是基于通过可编程互联连接的可配置逻辑块(LCB)矩阵的可编程半导体器件。FPGA可以针对所需的应用或功能要求进行编程。其中可编程是基于SRAM的。一共包括三个部分:可配置逻辑块(CLB)、互连 、SelectIO(IOB)、存储器、完整的时钟管理。FPGA的一般特性 当今的FPGA已经远远超出了先前版本的基本性能,并且整合了常用功能(如RAM、时钟管理和DSP)的硬(ASIC型)块。 FPGA内的基本元件如下所示。可配置逻辑块(CLB) CLB是FPGA内的基本逻辑单元。 实际数量和特性会依器件的不同而不同,但是每个CLB都包含一个由4或6个输入、一些选型电路(多路复用器等)和触发器组成的可配置开关矩阵。 开关矩阵是高度灵活的,可以进行配置以便处理组合逻辑、移位寄存器或RAM。 相应器件的数据手册中提供了更系统的详情。 互连 CLB提供了逻辑性能,灵活的互联布线在CLB和I/O之间发送信号。 有几种布线方法,从专门实现CLB互联的到快速水平和垂直长线,再到实现时钟与其它全局信号的低歪斜发送的器件。 除非特别规定,设计软件使得互联布线任务从用户眼前消失,这样就极大地降低了设计复杂度。 SelectIO(IOB) 当今的FPGA支持很多I/O标准,这样就为您的系统提供了理想的接口连接。 FPGA内的I/O按组分类,每组都能够独立的支持不同的I/O标准。 当今领先的FPGA提供了很多I/O组,这样就实现了I/O支持的灵活性。 存储器大多数FPGA均提供嵌入式Block RAM存储器,这可以在您的设计中实现片上存储器。 这可以为您的设计实现片上存储器。 Xilinx FPGA在36 kbit块中提供高达10 Mbits的片上存储器,可以支持真正的双端口操作。 完整的时钟管理业内大多数FPGA均提供数字时钟管理(Xilinx的全部FPGA均具有这种特性)。 Xilinx推出的最先进的FPGA提供数字时钟管理和相位环路锁定。相位环路锁定能够提供精确的时钟综合,且能够降低抖动,并能够实现过滤功能。什么是ASIC?ASIC(Application Specific Intergrated Circuits)即专用集成电路,是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。ASIC的特点是面向特定用户的需求,品种多、批量少,要求设计和生产周期短,它作为集成电路技术与特定用户的整机或系统技术紧密结合的产物,与通用集成电路相比具有体积更小、重量更轻、功耗更低、可靠性提高、性能提高、保密性增强、成本降低等优点。区别:1 适用于比较大的项目,成本相对低。FPGA比较适合小项目,片数比较少时。开发速度快。2 ASIC是生产时其逻辑功能就固定了;而FPGA是可编程的。3 FPGA的资源利用率比较低、功耗会远远大于ASIC芯片、面积也会比较大。4 FPGA灵活性、小项目成本比较低。FPGA和ASIC的比较ASIC是专用集成电路的简称,一般情况下用于性能很高,用量很大的场合。FPGA(Field Programmable Gate Array,现场可编程门阵列)作为现场可编程器件,在最近几年发展非常迅速,其可升级的特性为最大特点。FPGA因为具有高度的灵活性,占据了很多ASIC的领域。资源利用率和功耗。从FPGA资源利用的角度看,FPGA作为通用器件,在架构设计中是从统计的角度出发进行内部资源的比例分配(比如查找表的输入数量、存储器和逻辑的比例等等)。但是,针对一个安全产品的个案来讲,统计的资源利用情况不一定适合自己的应用。比如存储器资源,特定的体系架构中,作为数据缓冲的内部存储器往往需要很大,但是控制逻辑却不是那么多,这时存储器的资源和逻辑资源的分配出现了失调,不能找到一个合适的FPGA以低成本的方式直接实现。变通的方法只能是修改体系架构,使用外部的存储器,这样就不可避免地增加了成本,降低了可靠性。在ASIC的设计中,完全不用考虑资源比例的限制,可以根据实际的需要优化体系架构。同样地,因为FPGA的资源利用率比较低,有同样功能的FPGA芯片的功耗会远远大于ASIC芯片,这样就增加了系统的散热负荷,不可避免地增加了成本,降低了可靠性。设计难度。对于FPGA的设计难度的估计往往过于乐观。对于前端设计,FPGA和ASIC相差不多。对于后端设计,ASIC往往被认为有着非常长的时间和复杂度,也容易出问题。而对于FPGA来说,后端的实现不是很困难的事情。但是,事实上,后端的复杂度是由设计的复杂度和成本约束共同决定的。也就是说,如果同样的设计在ASIC的后端实现中很困难,那么在FPGA中情况只能更加恶化。因为在FPGA中,同样功能的逻辑电路经过映射后的逻辑级数会比ASIC映射后的逻辑级数增加很多,导致时序收敛更加困难。在大部分的FPGA设计中,是用芯片面积来换取性能的,其实质是牺牲了效率,当然带来的结果就是成本的提高。灵活性。关于ASIC的批评声音中,很重要的一点就是ASIC不能改变,不具备和FPGA同样的灵活性。这个说法在很大程度上是没有问题的,但是随着技术的发展,ASIC也在从架构角度增加灵活性,以提高ASIC芯片对未来业务的适应能力。经常用到的技术包括:ASIC内部内嵌可编程单元(NP技术类似)、结构化ASIC、增加对未知应用的预留接口等。FPGA的低成本方案。在FPGA的单件成本高的问题上,FPGA厂商提出了各自的方案。以领先的两家公司Xilinx和Altera为例,他们分别提出了EasyPath和HardCopy的成本降低方案。EasyPath是通过优化测试技术从而只测试用户用到的芯片部分来节约成本。如果一个设计的芯片资源利用率已经很大的话,EasyPath因为没有很大的操作空间,应该不会有很明显的成本降低。HardCopy实际上是一种结构化ASIC的方案,已经不能把它作为FPGA来对待。其原理是通过重新映射把原来的FPGA逻辑用结构化的ASIC方式实现。这种方案能够比FPGA明显地降低芯片的尺寸,还可以选择更合理的封装,从而降低成本。但是带来的后果是时序有变化和重新设计PCB板。这种方案也有NRE(None Recurring Engineering,一次性投入费用)的问题。从结构上讲,FPGA是可编程的,电路是可变的,可以根据使用的目的自由设计,也由此导致面积使用效率低。ASIC是根据使用的目的专门开发的电路,不能随意更改,但面积使用效率很高。从成本上讲,FPGA能有效控制time to market 以及初次投资成本。而在大规模销售情况下,ASIC的平均成本比FPGA低一个量级,但是初次投资成本很高。3. LATCH和DFF的概念和区别LATCH为锁存器,输出端的状态不不随着输入端的状态的改变而改变,只有在有锁存信号时输入的状态被保存到输出,直到下一个锁存信号来。故它是电平触发。DFF为由由D触发器构成的寄存器,用来储存代码或数据的逻辑部件。是同步时钟边沿触发。触发器:能够存储一位信号的基本单元电路称为“触发器”;区别:从寄存数据的角度来年,寄存器和锁存器的功能是相同的;它们的区别在于寄存器是同步时钟控制,而锁存器是电位信号控制。可见,寄存器和锁存器具有不同的应用场合,取决于控制方式以及控制信号和数据之间的时间关系:若数据有效一定滞后于控制信号有效,则只能使用锁;数据提前于控制信号而到达并且要求同步操作,则可用寄存器来存放数据。锁存器:输出端的状态不会随输入端的状态变化而变化,只有在有锁存信号时输入的状态被保存到输出,直到下一个锁存信号。通常只有0和1两个值。典型的逻辑电路是D触发器。缓冲器:多用在总线上,提高驱动能力、隔离前后级,缓冲器多半有三态输出功能。三态缓冲器就是典型的线与逻辑器件,可允许多个器件挂在一条总线上,当然OC输出也可用在线与逻辑应用上。OC门,又称集电极开路(漏极开路)与非门门电路,Open Collector(Open Drain)。为什么引入OC门?实际使用中,有时需要两个或两个以上与非门的输出端连接在同一条导线上,将这些与非门上的数据(状态电平)用同一条导线输送出去。因此,需要一种新的与非门电路-OC门来实现“线与逻辑”。OC门主要用于3个方面:实现与或非逻辑,用做电平转换,用做驱动器。由于OC门电路的输出管的集电极悬空,使用时需外接一个上拉电阻Rp到电源VCC。OC门使用上拉电阻以输出高电平,此外为了加大输出引脚的驱动能力,上拉电阻阻值的选择原则,从降低功耗及芯片的灌电流能力考虑应当足够大;从确保足够的驱动电流考虑应当足够小。 线与逻辑,即两个输出端(包括两个以上)直接互连就可以实现“AND”的逻辑功能。在总线传输等实际应用中需要多个门的输出端并联连接使用,而一般TTL门输出端并不能直接并接使用,否则这些门的输出管之间由于低阻抗形成很大的短路电流(灌电流),而烧坏器件。在硬件上,可用OC门或三态门(ST门)来实现。用OC门实现线与,应同时在输出端口应加一个上拉电阻。三态门(ST门)主要用在应用于多个门输出共享数据总线,为避免多个门输出同时占用数据总线,这些门的使能信号(EN)中只允许有一个为有效电平(如高电平),由于三态门的输出是推拉式的低阻输出,且不需接上拉(负载)电阻,所以开关速度比 OC门快,常用三态门作为输出缓冲器。建立时间和保持时间图1 建立时间(setup time)是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器;保持时间(hold time)是指在触发器的时钟信号上升沿到来以后,数据稳定不变的时间, 如果保持时间不够,数据同样不能被打入触发器。 如图1 。 数据稳定传输必须满足建立和保持时间的要求,当然在一些情况下,建立时间和保持时间的值可以为零。 PLD/FPGA开发软件可以自动计算两个相关输入的建立和保持时间。4. 用DFF实现二分频。5. 用VERILOG或VHDL写一段代码,实现消除一个glitchmodule dff(d, clr, cp,rst, Q); input d; input clr; input rst; input cp; output Q; reg Q; always (posedge cp or posedge rst) if(rst) Q = 0; else Q = d; endmodule7. 用VERILOG或VHDL写一段代码,实现10进制计数器。module timer(clk, rst, out); input clk; input rst; output 3:0 out; reg 3:0 count; assign out = count; always (posedge clk) if(rst) count = 0; else case(count) 0,1,2,3,4,5,6,7,8: count = count + 1; default: count = 0; endcaseendmodule8. 给出一个门级的图,又给了各个门的传输延时,问关键路径是什么,还问给出输入,使得输出依赖于关键路径。9. A,B,C,D,E进行投票,多数服从少数,输出是F(也就是如果A,B,C,D,E中1的个数比0多,那么F输出为1,否则F为0),用与非门实现,输入数目没有限制。F=ABC+ABD+ABE+ACD+ACE+ADE+BCD+BCE+BDE+CDE= (ABC+ABD+ABE+ACD+ACE+ADE+BCD+BCE+BDE+CDE)= (ABC)( ABD)( ABE)( ACD)( ACE)( ADE)( BCD)( BCE)( BDE)( CDE)1。集成电路设计前端流程及工具。IC front-end design procedure and tools.这个不用回答了吧。2。FPGA和ASIC的概念,他们的区别 The concepts of FPGA and ASIC, whats the difference?FPGA:现场可编程门阵列; ASIC: 专用集成电路。从结构上讲,FPGA是可编程的,电路是可变的,可以根据使用的目的自由设计,也由此导致面积使用效率低。ASIC是根据使用的目的专门开发的电路,不能随意更改,但面积使用效率很高。从成本上讲,FPGA能有效控制time to market 以及初次投资成本。而在大规模销售情况下,ASIC的平均成本比FPGA低一个量级,但是初次投资成本很高。3。DLATCH和DFF的概念和区别 功能大家都知道了,结构上通常DFF是由两级Dlatch构成,接入相位相反的时钟驱动信号;如果第一级接入低有效驱动,第二级高有效驱动,则DFF是上升沿有效。也可相反。4。用DFF实现二分频。 把Qb接到D就行了。 5。用VERILOG或VHDL写一段代码

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论