SoC设计与验证课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《SoC设计与验证课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SoC 设计 验证 课件
- 资源描述:
-
1、SoC设计与验证实验一 RTL设计1本课程的学习内容nSoC设计方法:基于IP的方法nSoC的设计实现(自顶向下):软件实现,硬件实现(逻辑仿真、逻辑综合、物理设计)n物理设计:由于时间的关系,作为选做内容n下面的内容,结合项目设计实验进一步学习和实践基于IP的设计方法和自顶向下的设计实现方法2Turbo Eagle SoCn体系结构nIP模块nCPUnDSPn外围接口n存储器nBUSn软件3第三讲 内容nRTL级设计nTE的RTL设计4RTL设计nRegister Transition Level寄存器传输级设计是一种硬件结构形式nRTL设计中数据来自寄存器,计算完成后的结果存入寄存器,即设
2、计以寄存器为边界构建n寄存器:多位的时序逻辑(触发器和锁存器),用于存储电路状态5RTL:行为和结构混合设计HDLLogic SynthesisFloorplanningPlacementRoutingTape-outCircuit ExtractionPre-Layout SimulationPost-Layout SimulationDesign Capture6RTL设计有限状态机n设计以寄存器为边界构建COMBINA T I O N ALLOGICRegiste r sOutputsNext st a t eCLKQDCurrent S t a teInputs7RTL设计流水线结构R
3、EGREGREGlogaCLKCLKCLKOutbREGREGREGlogaCLKCLKCLKREGCLKREGCLKOutbReferencePipelined8时序逻辑:registerqLatch电平敏感 DClkQDClkQnFlip Flop时钟沿敏感ClkClkDDQQ9基于锁存器和触发器的设计n在一个时钟周期内,组合逻辑完成一次计算,把计算结果存到时序逻辑中NLatchLogic1Logic2PLatchfFFsLOGICtp,combf10RTL级设计设计输入n利用硬件描述语言可以对RTL级的设计进行设计输入nVerilog中一般利用过程结构(initial,always),引
4、入寄存器,构建RTL级设计n逻辑综合器可以对RTL级HDL进行优化实现11RTL级设计逻辑综合n逻辑综合器可以将RTL级的HDL转换为寄存器和组合逻辑结构,并映射到具体的工艺库n逻辑综合器是自顶向下设计流程中最关键的EDA工具之一12自顶向下的设计方法n逻辑综合器使得自顶向下的设计方法成为可能nASIC和SoC的设计方法取代全定制方法,成为数字VLSI的主流方法nASIC是基于标准单元的方法,而SoC是基于IP的方法13第三讲 内容nRTL级设计nTE的RTL设计14实验目的n掌握基于IP集成的SoC的设计方法n进一步熟悉和掌握利用cadence工具进行自顶向下的设计实现的过程n完成IP集成、
5、逻辑仿真以及逻辑综合过程15实验内容n在现有的Turbo Eagle设计的基础上,增加一个IP软核PCI bridge,实现系统对外部PCB板上的PCI总线接口的支持nRTL设计:增加PCI软核n软件设计:增加PCI软核需要的软件,并编译实现n逻辑仿真:PCI单元仿真和全系统仿真n设计实现:对新的TE进行逻辑综合和物理设计16时间安排(第二周第八周)n第二周第三周:IP集成方法(包括PCI IP核的RTL设计)n第四周第五周:包括PCI IP的Turbo Eagle的逻辑仿真n第六周第七周:逻辑综合和门级仿真n第八周:项目检查17实验要求n设计内容:完成软核的集成、软件设计和实现、逻辑仿真和逻
6、辑综合的内容,物理设计为选做内容n设计报告:提交设计报告n考察方式:设计数据和设计报告各占据期末成绩的50n参考文件:570/starter_kit/slides/下的文件18实验:第一部分nPCI软核的逻辑设计与集成nPCI总线IPnRTL设计n软件设计19PCI软核的逻辑设计与集成nPCI软核nThe PCI-Bridge HDL code软核的RTL描述文件nA full standalone testbench ready for simulationnExample C firmware for the Leon to program the PCI-Bridgen提供给我们软核(在
7、starter kit目录下),我们要利用软核实现IP集成,包括硬件集成和软件实现n并对集成后的系统进行验证和实现20项目设计:RTL设计nPCI总线的工作原理nPCI总线IP的结构nPCI总线IP的仿真验证nIP集成n软件实现(不作要求)21PCI总线的工作原理n参考”PCI local bus specification”nPCI总线的specn总线的信号n总线的工作22The PCI BusnPCI Special Interest Group:nDeveloped in 1993 for Intel Personal ComputersnPCB板上的总线,在PC中连接各种外围设备23T
8、he PCI Bus:SpecificationsnSynchronous 33 MHz transfers,33MHz x 4byte=132Mb/secn32 Multiplexed Address/Data Lines(saves pins and cost)nBasic Transfers:1)Address Phase,2)Data PhasenCPU Architecture independent(also used by Sun,Apple etc.)nSupports Plug&Play with Configuration Registers/Cycles24The PCI
9、 Bus:SpecificationsnBus Master:“PCI Initiator”,Bus Slave:“PCI Target”nBurst Data Phases continue until Initiator deasserts Frame#n66MHz,64 bit Versions availablenSupports 5V and 3.3V operationnBus Signal Integrity guaranteed with special PCI-IO pads(slew limited)nOnly 4 Slots allowed,Extensions only
10、 with PCI-to-PCI Bridge25PCI总线的工作原理n参考”PCI local bus specification”nPCI总线的specn总线的信号n总线的工作26PCI 总线信号nSystem SignalsnClk:33MHz or 66Mhz,Data synchronized to rising edgenRST#:Asynchronous Reset,asserted for 100usec27PCI 总线信号nData SignalsnAD31:0nMultiplexed 32-bit Address/Data BusnAddress Phase:Followi
11、ng High-Low transistion on“Frame#”nData Phase:IRDY#and TRDY#must be low to complete transfernBurst transfer:Data Phase lasts several cycles,Frame#goes High in last cyclenC/BE#3:0nAddress Phase:Indicates the type of transfernData Phase:Indicates which bytes are valid(Byte-Enable)nPar:Used to implemen
12、t Even Parity28PCI总线信号:Control SignalsnFrame#:Indicate Address/Data Phase,End of TransfernIRDY#:Initiator ReadynTRDY#:Target ReadynStop#:Used by Target to cancel/suspend a transfernLock#:For Initiator to get exlusive access to a TargetnDEVSEL#:Target indication that it was selectednIDSEL:Unique for
13、each slot,indicates Configuration CyclenPCI Initiator Arbitration SignalsnREQ#:Unique for each slot,Requests the BusnGNT#:Unique for each slot,Grants the BusnSlot-unique signals:System Arbiter can choose arbitration algorithm29PCI总线的工作原理n参考”PCI local bus specification”nPCI总线的specn总线的信号n总线的工作30PCI Co
14、nfiguration CyclesnPCI Supports Plug&Play,插上PCI器件以后,系统启动过程中会自动检查,并为该器件分配地址空间nPCI Bridge作为amba总线上的一个器件,有固定的地址,在本设计中将占据DES的地址nPCI Bridge需要为PCB板上挂在PCI总线上的器件分配地址n为了支持即插即用,PCI总线协议中包括配置周期,来让host对PCI器件进行地址分配31PCI Configuration Cyclesn在配置周期中,PCI总线对总线上的器件进行配置,即根据需要分配地址n这不同于一般的IO和存储器的寻址方式,一般来说,总线上的器件都被给定一段地址,
15、就像PCI Bridge在amba总线上一样nPCI-Bridge负责启动PCI总线的配置周期n配置周期也分为读写操作,host从器件读取器件名称和ID等信息,并把基址base address写到器件中的寄存器中,根据器件的需要分配其一段地址空间32PCI Configuration CyclesnHow to address a device before it has an address?nThe PCI Configuration Read and Write CyclesnEach slot has an IDSEL linenThat line is asserted,and AD
16、0:1 is 00nAD7:2 provides the address of the configuration registernC/BE3:0 specifies“Configuration Read”or“Configuration Write”33PCI总线的工作时序n从地址周期开始,然后进入数据周期n数据传输期间FRAME信号有效nIRDY和TRDY都有效期间传输数据nDEVSEL信号通知总线,该目标器件正在被读写34项目设计:RTL设计nPCI总线的工作原理nPCI总线IP(pci_bridge)的结构nPCI总线IP的仿真验证nIP集成n软件实现(不作要求)35The Goal
17、:Bring in the PCI BusPCI BridgeWishboneSlaveWishboneMasterPCIInitiatorPCITargetPCIArbiterPCITargetAmbaWishboneWrapperAmba BusTurbo EagleTestbenchnThe PCI-Bridge has 2-directional data flownFrom the PCI Bus to the PCI-Target to the Wishbone MasternFrom the Amba Bus to the Wishbone Slave to the PCI In
18、itiatornFor this project we only use the outbound directionnReceived PCI data is stored in“PCI_OUTPUT”,compare to Golden FilePCI_OUTPUT PCI Bus36PCI总线器件寻址的实现nBridge采用image的方法来实现对PCI器件的寻址和配置n对于wishbone slave方式来说,bridge中包括最多5个image来表示可能的PCI器件n来自amba(wishbone)总线的地址被映射到某个image上,经过地址转换寻址该image所表示的PCI总线上的
19、器件37PCI-Bridge OperationnThe PCI-Bridge can have up to 5 ImagesnImage 0 is mandatory,provides Register accessnThis project uses Image 0 and Image 1nImage 1 is configured at run-timeAmba BusImage 0Image 1Image 2Image 3Image 4Bus Address=Image 1-4:Address TranslationPCI BusImage 0:AccessPCI-BridgeRegi
20、stersMatchesany Image?PCI-Bridge38The Imaging MechanismnImage translation is necessarynThe PCI side memory map is known only at runtimenCannot hope that the Amba memory map matches the PCI sidenEach Implemented Image has 4 RegistersnBase AddressnAddress MasknTranslation RegisternControl Register39Th
21、e Imaging MechanismnEach Implemented Image has 4 RegistersnFor every imcoming address on the Amba busnChecks if it fits the Base address of Image1 through Image4nChecks the control register if translation is enablednIf yes,bits specified in Mask are replaced by those in TranslationnThis is the addre
22、ss that is output to the PCI Bus40Translation in the Turbo-EaglenThe PCI-Bridge replaces an other block on the AMBA busnMemory address range:$A012 0000$A013 FFFF 41Translation in the Turbo-EaglenAt the minimum 2 Images are needednImage 0:To access the internal PCI-Bridge RegistersnThis is the only i
展开阅读全文