您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 酒店餐饮 > 第八章可编程片上系统芯片SOPC
第八章可编程片上系统芯片SOPC8.1SOPC概述可编程片上系统芯片SOPC(SystemOnaProgrammableChip)是Altera公司于2000年提出的一种灵活高效的SOC解决方案,SOPC利用可编程逻辑技术把整个电子系统集成在一个单片上,是一种特殊的嵌入式系统芯片。与可编程逻辑器件一样,SOPC的设计也仅需完成前端设计,故其设计投入比较少,设计方法灵活,SOPC的系统功能可裁减、易扩充,结合了SOC和CPLD、FPGA的优点。作为一种系统级芯片,SOPC具有低的设计成本和开发风险,从而获得广泛的应用。SOPC是一种可编程逻辑器件,与普通PLD相比,SOPC具有如下特点:1.至少包含一个嵌入式处理器内核。2.具有一定容量的片内高速RAM。3.具有足够的片上可编程逻辑资源。4。具有处理器调试接口和编程接口。SOPCVirtex-IIPro系列Virtex-4FX系列PowerPC405处理器核Excalibur系列ARM922T处理器核除了嵌入处理器硬核的SOPC之外,基于FPGA的嵌入CPU软核的片上可编程系统的实现方法也得到广泛的应用,这类基于FPGA的嵌入式CPU软核比较常用的是Xilinx公司的8位嵌入式RISC处理器软核PicoBlaze、32位嵌入式RISC处理器软核MicroBlaze和Altera公司的NIOS软核。Xilinx公司的Virtex系列FPGA(包括VirtexII、Virtex4和Virtex5)和SpartanIII(包括Spartan3A、Spartan3E和Spartan3)系列FPGA均支持基于嵌入式CPU软核的SOPC设计实现。Xilinx的SOPC概况Virtex-IIPro20030.13μm深亚微米CMOS工艺PowerPC405处理器硬核3.125Gb/s极速双向串行传送器Virtex-IIFPGAVirtex-4FX200490nm深亚微米CMOS工艺9层铜布线PowerPC405处理器硬核10Gb/s极速双向串行传送器Virtex-4FPGA2-4个三模式以太网管理器大量DSP逻辑资源8.2Virtex-II系列FPGA的结构和性能8.2.1概述Virtex-II系列FPGA是一种大容量、高性能的新一代现场可编程门阵列平台器件。Virtex-II系列FPGA的主要性能如下:支持IP核设计实现,支持基于8位嵌入式处理器软核PicoBlaze和32位嵌入式处理器软核MicroBlaze的片上系统设计实现。逻辑资源密度:40K-10MPLD门;内部时钟:420MHz;I/O数据传送速率:840Mb/S。18Kbit的可选RAM模块可构成3M比特双口RAM;最高容量为1.5M比特的分布式RAM资源。与外部存储器的高性能接口。高性能算术运算功能,嵌入式18bit×18bit专用乘法器模块,快速超前进位链。灵活可变的逻辑资源,最多可达93184个带时钟许可的内部寄存器/锁存器;最多可达93184个查找表LUT(Look-Up-Table)或者可级联16位移位寄存器;支持宽输入逻辑函数,并且有宽位的多路选择器;内部三态总线;支持积项和的水平级联链;高性能的时钟管理电路,最多达12个数字时钟管理器DCM(DigitalClockManager)组件,16个全局时钟多路选择缓冲器。高性能的输入输出技术,最多达1108个用户输入/输出引脚,支持19种单端信号标准和8种双端差分信号标准。支持IEEE1149.1边界扫描技术和IEEE1532在系统配置技术。8.2.2Virtex-IIFPGA的总体结构8.2.3Virtex-II系列FPGA的可构造逻辑模块Virtex-II的CLB1.Slice的结构Virtex-IISlice的逻辑图2.Virtex-IISlice中的触发器无置位或复位同步复位或者同步置位同步复位和置位异步复位或异步置位异步复位和置位。3.分布式RAM每个函数发生器可以构成16×1的同步RAM资源,这部分RAM资源称为分布式可选择RAM单元。一个CLB中的RAM的构造方式有如下几种:·16×8bit单口RAM,·32×4bit单口RAM,·64×2bit单口RAM,·128×1bit单口RAM,·16×4bit双口RAM,·32×2bit双口RAM,·64×1bit双口RAM。4.移位寄存器Virtex-IIFPGA的每个函数发生器,除了可以构造成分布式RAM之外,还可以构造成16位移位寄存器,移位寄存器的写入是同步的,读出可动态进行,CLB中的移位链逻辑,可以将CLB中由函数发生器构造的移位寄存器级联,形成128位的移位寄存器。5.多路选择器Virtex-II的函数发生器和与其相关的多路选择器可以组成宽位的多路选择器:用一个Slice可以组成一个四选一的路选择器,用二个Slice可以组成一个8选一的选择器,用一个CLB可以组成一个16选一的多路选择器,用二个CLB可以组成一个32选一的多路选择器。6.算术运算逻辑Virtex-II的CLB中的算术运算逻辑由快速进位链和Slice中的XOR门等逻辑资源构成,一个Slice可以组成2位全加器,一个CLB中有2个独立的进位链。由二个Slice实现的4位全加器逻辑图7.积项和(SumOFProducts)FPGA的函数发生器只能构成一个四个变量的任意函数,为了扩展组合函数的规模,在Virtex-II的Slice中,有一个称为ORCY的专用或门和一个称为MUXCY的二选一多路,用于组合函数的扩展。利用Slice的ORCY级联形成和项众多的组合函数利用Slice的MUXCY形成宽输入与门8.2.418-Kbit可选RAM模块Virtex-II器件集成了多个容量为18Kbit的可选择RAM模块,每个RAM模块上有两个独立的数据端口,分别由两组独立的时钟和控制信号控制,同步存取同一个存储单元区域。每个端口的控制信号功能是相同的,这些控制信号由时钟CLK、时钟许可EN、写许可WE、置位/复位SSR和地址线组成。18Kbit的RAM有多种配置形成,包括单口RAM和双口RAM,以及各种不同的数据字长,包括8K×2bit、4K×4bit、1K×18bit和512×36bit,以支持各种字长的数字系统。8.2.5嵌入式乘法器在Virtex-II器件中,每列RAM模块的旁边,排列着一列18bit×18bit的嵌入式乘法器模块,乘法器模块的数量和RAM模块的数量相同,它们可以和RAM模块组合,也可以独立地使用。18bit×18bit嵌入式乘法器采用有符号数二位补码乘法算法。乘法器模块的工作速度,以XC2V1000-5为例,当数据由块RAM输入时,最高乘法频率为88MHz;当数据由寄存器输入时,最高乘法频率可达105MHz。将乘法器模块适当组合,可以实现更宽位的乘法器。设A2A1和B2B1是两个2n位二进制数,A2、B2分别是二数的高n位,A1、B1是二数的低n位,则:111212222121212122)(2)()2()2(BAABBABABBAABBAAnnnn由上式可见,利用四个n位乘法器和若干个2n位加法器即可实现二个2n位数的乘法。8.2.6全局时钟多路缓冲器Virtex-II的时钟分布8.2.7数字时钟管理器DCM数字时钟管理器DCM提供了大量有效的时钟管理功能,包括无扭曲时钟信号生成、频率合成和时钟移相。DCM使用全数字延时线,产生高精度的时钟相位和频率控制。8.2.8输入输出模块Virtex-II的输入输出模块IOB是高性能的IOB,每4个IOB连到一个开关矩阵,4个IOB分成2组,可以构成4个单端输入/输出或者2个双端差分输入/输出。单端输入/输出支持19种I/O标准,双端差分输入输出支持8种I/O标准。Virtex-IIIOB的逻辑资源IOB触发器的配置方式无复位/置位同步复位或同步置位同步复位和置位异步置位或异步复位异步置位和复位IOB中的六个触发器/锁存器分成三个数据通道,即输入通道、输出通道和三态控制信号通道。在双数据速率中,每个通道由两个寄存器构成,寄存器时钟由DCM产生,并且必须有180°相位差。8.3嵌入式RISC处理器软核MicroBlaze8.3.1嵌入式处理器软核MicroBlaze概况MicroBlaze是Xilinx开发的32位RISC处理器软核,支持SpartanIII系列和Virtex系列FPGA实现系统级芯片。MicroBlaze采用哈佛结构,指令执行分五段,即取指段IF、译码段OF、执行段EX、存储器存取段MEM、回写段WB。MicroBlaze的体系结构有五个版本,即V2.10a、V3.00a、V4.00a和V5.00a,V5.00a按五级流水线组织,其余各版均为三级流水线组织。MicroBlaze的数据采用大端对齐的方式,支持字、半字和字节三种格式。MicroBlaze的指令均为32位指令,指令集共124条,分为A类指令和B类指令两类。A类指令有二个源寄存器操作码和一个目的寄存器操作码,B类指令有一个源寄存器操作码、一个目的寄存器操作码和一个16位立即数。操作码目的寄存器源寄存器A源寄存器B000611162131MicroBlaze的A类指令格式操作码目的寄存器源寄存器A0006111631MicroBlaze的B类指令格式8.3.2嵌入式处理器软核MicroBlaze的结构8.3.3嵌入式处理器软核MicroBlaze的接口信号DOPB接口信号IOPB接口信号DLMB接口信号ILMB接口信号FSL接口信号数据侧XilinxCache数据链IXCL接口信号指令侧XilinxCache数据链DXCLL接口信号内核接口信号8.4Virtex-IIPro系列可编程片上系统芯片8.4.1Virtex-IIPro系列SOPC的概况Virtex-IIPro器件的资源由三部分组成。一是可编程逻辑资源第二部分是PowerPC405处理器核,这是实现系统级功能所必需的IP硬核。第三部分是为了实现高速数据传送而设计的极速双向串行传送器。Virtex-IIPro系列器件的结构8.4.2嵌入式PowerPC405处理器核1.PowerPC405处理器的结构PowerPC405处理器是32位RISC处理器,采用哈佛结构和五级流水线操作,最高工作频率达300MHz,支持IBM的Core-ConnectTM总线,具有低功耗性能,整个处理器的功耗为0.9mW/MHz。CPU中央处理单元CPUPPC405处理器的中央处理单元采用五级流水线操作,这五级流水线是取指、译码、执行、回写和装入写回(loadwrite-back)。CPU由执行单元EXU和取指译码单元组成。执行单元包含有32个32位通用寄存器、算术逻辑运算单元ALU和乘累加单元MAC,支持乘累加操作和16位带符号数或无符号数的半字乘指令。执行单元中的硬件乘除单元支持整数快速乘除运算,整数乘法4个周期完成,整数除法35个周期完成。取指译码单元发送稳定的指令流到执行单元,所有指令均被译码后传送到执行单元。如果指令执行被中断,则指令排成指令队列。指令队列由二个预取指缓冲器和一个译码缓冲器组成,如果预取指缓冲器空,则指令被直接送到译码缓冲器。取指译码单元可以处理二个以下的分支,支持静态分支预测。如果在执行前一个分支还未解决,则取指译码单元预测该分支的执行,使处理器从预测通道专门取一条指令。存储器管理单元PPC405处理器支持4GB的寻址空间,存储器管理单元MMU提供地址转换和保护功能,以及存储器仲裁。PPC405的MMU采用变页长的方法支持需求分页(demand-paged)方式的虚拟存储器管理,使用的页长可以是1KB、4KB、16KB、64KB、256K、1MB、4MB或16MB。这种虚拟存储器管理方式可有效地提高存储器的效率,将TLB的未命中
本文标题:第八章可编程片上系统芯片SOPC
链接地址:https://www.777doc.com/doc-371298 .html