本课题是在课题组已实现的高速串行通信平台的基础上,进一步引伸,设计开源的PCI软核通信模块替代Xilinx公司提供的LogiCORE PCI核,力求在从模式下,做到占用资源更少,传输速度更快,也为以后实现更完整的功能提供平台。 本文以此为背景,基于FPGA平台,搭建以开源的PCI软核为核心的串行通信接口平台,使其成为PCI总线与用户逻辑之间的桥梁,使用户逻辑避开与复杂的PCI总线协议。本课题采用Spartan-II FPGA芯片XC2S200-6FG456C系统开发板作为串行通信接口的硬件实验平台,实现了支持配置读/写交易、单数据段读/写、突发模式读/写、命令/地址译码功能和数据传送错误检测与处理功能的PCI软核。 本文主要阐述了以PCI软核为核心的串行通信平台的实现,首先介绍了PCI软核的编程语言、软件工具和硬件实验平台Spartan-II FPGA芯片XC2S200-6FG456C系统开发板。然后,介绍了PCI总线命令、PCI软核所支持的功能、PCI软核两侧信号的定义、PCI软核配置模块以及探讨了PCI软核的状态机接收、发送数据等过程,分析了PCI软核的数据收发功能仿真,主要包括配置读/写交易、单数据段模式读/写和突发模式读/写的仿真图形,并阐述了管脚约束的操作流程。最后介绍PCI软核模块的WDM驱动,内容包括驱动程序简介、驱动程序的开发、中断处理、驱动程序与应用程序之间的通信以及应用程序操作。最后,对PCI软核的各种性能进行了比较分析。整个模块设计紧凑,完成在实验平台上的数据发送。 设计选用硬件描述语言VerilogHDL,在开发工具Xilinx ISE7.1中完成整个系统的设计、综合、布局布线,利用Modelsim进行功能及时序仿真,使用DriverWorks为PCI软核编写WinXP下的驱动程序,用VC++6.0编写相应的测试应用程序。之后,将FPGA设计下载到Spanan-II FPGA芯片XC2S200-6FG456C系统开发板中运行。 文章最后指出工作中的不足之处和需要进一步完善的地方。
上传时间: 2013-04-24
上传用户:sc965382896
并行总线PATA从设计至今已快20年历史,如今它的缺陷已经严重阻碍了系统性能的进一步提高,已被串行ATA(Serial ATA)即SATA总线所取代。SATA作为新一代磁盘接口总线,采用点对点方式进行数据传输,内置数据/命令校验单元,支持热插拔,具有150MB/s(SATA1.0)或300MB/s(SATA2.0)的传输速度。目前SATA已在存储领域广泛应用,但国内尚无独立研发的面向FPGA的SATAIP CORE,在这样的条件下设计面向FPGA应用的SATA IP CORE具有重要的意义。 本论文对协议进行了详细的分析,建立了SATA IP CORE的层次结构,将设备端SATA IP CORE划分成应用层、传输层、链路层和物理层;介绍了实现该IPCORE所选择的开发工具、开发语言和所选用的芯片;在此基础上着重阐述协议IP CORE的设计,并对各个部分的设计予以分别阐述,并编码实现;最后进行综合和测试。 采用FPGA集成硬核RocketIo MGT(RocketIo Multi-Gigabit Transceiver)实现了1.5Gbps的串行传输链路;设计满足协议需求、适合FPGA设计的并行结构,实现了多状态机的协同工作:在高速设计中,使用了流水线方法进行并行设计,以提高速度,考虑到系统不同部分复杂度的不同,设计采用部分流水线结构;采用在线逻辑分析仪Chipscope pro与SATA总线分析仪进行片上调试与测试,使得调试工作方便快捷、测试数据准确;严格按照SATA1.0a协议实现了SATA设备端IP CORE的设计。 最终测试数据表明,本论文设计的基于FPGA的SATA IP CORE满足协议需求。设计中的SATA IP CORE具有使用方便、集成度高、成本低等优点,在固态电子硬盘SSD(Solid-State Disk)开发中应用本设计,将使开发变得方便快捷,更能够适应市场需求。
上传时间: 2013-06-21
上传用户:xzt
FPGA作为新一代集成电路的出现,引起了数字电路设计的巨大变革。随着FPGA工艺的不断更新与改善,越来越多的用户与设计公司开始使用FPGA进行系统开发,因此,PFAG的市场需求也越来越高,从而使得FPGA的集成电路板的工艺发展也越来越先进,在如此良性循环下,不久的将来,FPGA可以主领集成电路设计领域。正是由于FPGA有着如此巨大的发展前景与市场吸引力,因此,本文采用FPGA作为电路设计的首选。 @@ 随着FPGA的开发技术日趋简单化、软件化,从面向硬件语言的VHDL、VerilogHDL设计语言,到现在面向对象的System Verilog、SystemC设计语言,硬件设计语言开始向高级语言发展。作为一个软件设计人员,会很容易接受面向对象的语言。现在软件的设计中,算法处理的瓶颈就是速度的问题,如果采用专用的硬件电路,可以解决这个问题,本文在第一章第二节详细介绍了软硬结合的开发优势。另外,在第一章中还介绍了知识产权核心(IP Core)的发展与前景,特别是IP Core中软核的设计与开发,许多FGPA的开发公司开始争夺软核的开发市场。 @@ 数字电路设计中最长遇到的就是通信的问题,而每一种通信方式都有自己的协议规范。在CPU的设计中,由于需要高速的处理速度,因此其内部都是用并行总线进行通信,但是由于集成电路资源的问题,不可能所有的外部设备都要用并行总线进行通信,因此其外部通信就需要进行串行传输。又因为需要连接的外部设备的不同,因此就需要使用不同的串行通信接口。本文主要介绍了小型CPU中常用的三种通信协议,那就是SPI、I2C、UART。除了分别论述了各自的通信原理外,本文还特别介绍了一个小型CPU的内部构造,以及这三个通信协议在CPU中所处的位置。 @@ 在硬件的设计开发中,由于集成电路本身的特殊性,其开发流程也相对的复杂。本文由于篇幅的问题,只对总的开发流程作了简要的介绍,并且将其中最复杂但是又很重要的静态时序分析进行了详细的论述。在通信协议的开发中,需要注意接口的设计、时序的分析、验证环境的搭建等,因此,本文以SPI数据通信协议的设计作为一个开发范例,从协议功能的研究到最后的验证测试,将FPGA 的开发流程与关键技术等以实例的方式进行了详细的论述。在SPI通信协议的开发中,不仅对协议进行了详细的功能分析,而且对架构中的每个模块的设计都进行了详细的论述。@@关键词:FPGA;SPI;I2C;UART;静态时序分析;验证环境
上传时间: 2013-04-24
上传用户:vvbvvb123
随着半导体制造技术不断的进步,SOC(System On a Chip)是未来IC产业技术研究关注的重点。由于SOC设计的日趋复杂化,芯片的面积增大,芯片功能复杂程度增大,其设计验证工作也愈加繁琐。复杂ASIC设计功能验证已经成为整个设计中最大的瓶颈。 使用FPGA系统对ASIC设计进行功能验证,就是利用FPGA器件实现用户待验证的IC设计。利用测试向量或通过真实目标系统产生激励,验证和测试芯片的逻辑功能。通过使用FPGA系统,可在ASIC设计的早期,验证芯片设计功能,支持硬件、软件及整个系统的并行开发,并能检查硬件和软件兼容性,同时还可在目标系统中同时测试系统中运行的实际软件。FPGA仿真的突出优点是速度快,能够实时仿真用户设计所需的对各种输入激励。由于一些SOC验证需要处理大量实时数据,而FPGA作为硬件系统,突出优点是速度快,实时性好。可以将SOC软件调试系统的开发和ASIC的开发同时进行。 此设计以ALTERA公司的FPGA为主体来构建验证系统硬件平台,在FPGA中通过加入嵌入式软核处理器NIOS II和定制的JTAG(Joint Test ActionGroup)逻辑来构建与PC的调试验证数据链路,并采用定制的JTAG逻辑产生测试向量,通过JTAG控制SOC目标系统,达到对SOC内部和其他IP(IntellectualProperty)的在线测试与验证。同时,该验证平台还可以支持SOC目标系统后续软件的开发和调试。 本文介绍了芯片验证系统,包括系统的性能、组成、功能以及系统的工作原理;搭建了基于JTAG和FPGA的嵌入式SOC验证系统的硬件平台,提出了验证系统的总体设计方案,重点对验证系统的数据链路的实现进行了阐述;详细研究了嵌入式软核处理器NIOS II系统,并将定制的JTAG逻辑与处理器NIOS II相结合,构建出调试与验证数据链路;根据芯片验证的要求,设计出软核处理器NIOS II系统与PC建立数据链路的软件系统,并完成芯片在线测试与验证。 本课题的整体任务主要是利用FPGA和定制的JTAG扫描链技术,完成对国产某型DSP芯片的验证与测试,研究如何构建一种通用的SOC芯片验证平台,解决SOC验证系统的可重用性和验证数据发送、传输、采集的实时性、准确性、可测性问题。本文在SOC验证系统在芯片验证与测试应用研究领域,有较高的理论和实践研究价值。
上传时间: 2013-05-25
上传用户:ccsp11
随着以太网技术的不断发展,网络的传输速度已经由最初的10M发展到现在的10,000M。用可编程逻辑器件(FPGA)实现以太网控制器与其它SOC系统的互连成为当前的研究热点。本文阐述了MAC层的FPGA设计、仿真及测试;介绍了整个系统的内部结构、模块划分,并对各个模块的设计过程进行了详细阐述,接着介绍了开发环境和验证工具,同时给出测试方案、验证数据、实现结果及时序仿真波形图。 对MAC层的主要功能模块如:发送模块、接收模块、MAC流程控制模块、寄存器模块、MⅡ接口模块和主机接口模块以及CRC,CSMA/CD,HASH表等算法给出了基于FPGA及硬件描述语言的解决方法。 本课题针对以下三个方面进行了研究并取得一定的成果: 1)FPGA开发平台的硬件实现。选用Xilinx公司的XC3S1000-FT256-4-C和ATMEL公司的ARM9200作为测试的核心器件,采用LXT971芯片作为物理层芯片,AT91RM9200作为数据输入源和双blockram作为帧缓存搭建FPGA硬件验证开发平台。 2)基于FPGA实现以太网控制器。用VerilogHDL语言构建以太网控制器,实现CSMA/CD协议、10M/100M自适应以及与物理层MⅡ接口等。 3)采用片上系统通用的WS接口。目的是便于与具有通用接口的片上系统互连,也为构建SOC上处理器提供条件。 本论文实现了一个基于WS总线接口可裁减的以太网MAC控制器IP软核,为设计具有自主知识产权的以太网MAC控制器积累了经验。同时,为与其它WS接口的控制器实现直接互连创造了条件,对高层次设计这一先进ASIC设计方法也有了较为深入的认识。
上传时间: 2013-07-17
上传用户:bruce
USB(UniversalSerialBus,通用串行总线)是当今消费电子产品和仪器设备中应用最广的接口协议之一,然而目前国内的USB芯片只有极少数几款,产品研究善处于起步阶段,绝大部分产品主要由国外的IC设计芯片厂商如Cypress、NEC等一些国际著名公司提供。因而,如果能够自主开发设计USB芯片以替代国外同类产品,将会有很好的市场前景和利润空间。 本论文课题是针对基于FPGA(FieldProgrammableGateArray,现场可编程门阵列器件)的数字电子产品应用设计一种实际可复用的USB接口引擎软核。该软核主要是用于处理USB标准协议包的通信处理,通过外接MCU(MultipointControlUnit,微控制器)就可以实现完整的USB接口通讯功能。它的功能相当于一些USB引擎的专用芯片如:Philips的PDIUSBD12等,其优点是结构简单、灵活性高、复用设计方便。 功能仿真和综合测试结果显示本论文所设计的接口引擎软核符合设计要求,并且软核的性能和市场上同类产品基本一致。本论文的创新之处在于:1、从可配置性角度出发设计了低速、全速、高速三种可选模式;2、支持最多31个可配置端点;3、采用了可综合、可移植的RTL(RegisterTransferLevel,寄存器传输级)代码设计规则,同时也开发了可综合的验证测试代码;4、完全由硬件实现USB通信功能。
上传时间: 2013-07-18
上传用户:JasonC
离散余弦变换(DCT)及其反变换(IDCT)在图像编解码方面应用十分广泛,至今已被JPEG、MPEG-1、MPEG-2、MPEG-4和H.26x等国际标准所采用。由于其计算量较大,软件实现往往难以满足实时处理的要求,因而在很多实际应用中需要采用硬件设计的DCT/IDCT处理电路来满足我们对处理速度的要求。本文所研究的内容就是针对图像处理应用的8×8二维DCT/IDCT处理核的硬件实现。 本文首先介绍了DCT和IDCT在图像处理中的作用和原理,详细说明了DCT变换实现图像压缩的过程,并与其它变换比较说明了用DCT变换实现图像压缩的优势。接着,分析研究了DCT的各种快速算法,总结了前人对DCT快速算法及其实现所做的研究。本文给出了两种性能、资源上有一定差异的二维DCT/IDCT的FPGA设计方案。两种方案均利用DCT的行列分离特性,采用流水线设计技术,将二维DCT/IDCT实现转化为两个一维DCT/IDCT实现。在一维DCT/IDCT设计中,根据图像处理的特点对Loeffler算法的数据流进行了优化,通过合理安排时钟周期数和简化各周期内的操作,大大缩短了关键路径的执行时间,从而提高了流水线的执行速度。最后,对所设计的DCT/IDCT处理核进行了综合和时序仿真。 结果表明,当使用Altera公司的MERCURY系列FPGA器件时,本文设计的方案一能够在116M时钟频率下正确完成8×8的二维DCT或IDCT的逻辑运算,消耗2827个逻辑单元;方案二能够在74M时钟频率下正常工作,消耗1629个逻辑单元。
上传时间: 2013-07-14
上传用户:3291976780
本文主要阐述基于FPGA对IEEE802.3快速以太网MAC层功能的实现.首先介绍了以太网协议以及快速以太网接入无源光网EPON的原理,然后重点阐述了MAC层的FPGA设计、仿真及测试.先总体介绍了对整个MAC系统的内部结构、模块划分,再对各个模块的设计进行了详细的描述,接着介绍了开发环境和验证工具,之后给出了测试方案,验证数据、实现结果及时序仿真波形图.最后是对下一步将设计的MAC IP应用于EPON的MAC层协议进行了研究分析,通过数学推导和实例给出了MPCP的DBA算法,并讨论了在MAC核中添加MPCP协议的实现方法.
上传时间: 2013-06-10
上传用户:时代将军
随着电子技术的不断发展,各种智能核仪器逐步走向自动化、智能化、数字化和便携式的方向发展。针对传统的多道脉冲幅度分析器体积大,人机交互不友好,不方便现场分析等的缺陷[5]。新型的高速、集成度高、界面友好的多道脉冲幅度分析器的陆续出现填补了这一缺点。 随着电子技术的发展,以ARM为核的处理器技术的应用领域不断扩大,相比较单片机而言,它的主频高、运算速度快,可以满足多道脉冲幅度分析器的苛刻的时间上的要求。而且ARM处理器功耗小,适合于功耗要求比较苛刻的地方,这些方面的特点正好满足了便携式多道脉冲幅度分析器野外勘察的要求。同时,由于以ARM为核的处理器具有丰富的外设资源,这样就简化了外设电路及芯片的使用,降低了功耗并增强了产品的信赖性。另外,ARM芯片可以方便的移植操作系统,为多道脉冲幅度分析器多任务的管理和并行的处理,甚至硬实时功能的实现提供了前提。而且在ARM平台使用嵌入式linux操作系统使多道脉冲幅度分析器的软件易于升级。 智能化和小型化是多道脉冲幅度分析器的发展趋势。智能化要求系统的自动化程度高、操作简便、容错性好。智能化除了需要控制软件外,还需要软件命令的执行者即硬件控制电路来实现相应的控制逻辑,两者的结合才能真正的实现智能化。小型化要求系统的体积小、功耗小、便于携带;小型化除了要求采用微功耗的器件,还要求电路板的尺寸尽量的小且所用元件尽量的少,但小型化的同时必须保持系统的智能化,即不能减少智能化所要求的复杂的逻辑和时序的控制功能。为此采用高集成度的ARM芯片实现控制电路能满意地同时满足智能化和小型化的要求。在研制的多道脉冲幅度分析器中,几乎所有的控制都可以用控制芯片来实现,如阈值设定、自动稳谱以及多道数据采集,在节省了元件的数目和电路板的尺寸的同时仍能保持系统的智能化程度。 Linux内核精简而高效,可修改性强,支持多种体系结构的处理器等,使得它是一个非常适合于嵌入式开发和应用的操作系统。嵌入式Linux可以运行的硬件平台十分广泛,从x86、MIPS、POWERPC到ARM,以及其他许多硬件体系结构。目前在世界范围内,ARM体系结构的SOC逐渐占领32位嵌入式微处理器市场,ARM处理器及技术的应用几乎已经深入到各个领域,例如:工业控制,无线通讯,网络,消费类电子,成像等。 本课题采用三星公司生产的ARM(Advanced RISC Machines,先进精简指令集机器)芯片S3C2410A设计并研制了一种便携式的核数据采集系统设计方案。利用ARM芯片丰富的外设资源对传统的多道脉冲幅度分析器进行改进和简化。系统由前端探测器系统,以及由线性脉冲放大器、甄别电路、控制电路、采样保持电路组成的前置电路,中央处理器模块,显示模块,用户交互模块,存储模块,网络传输模块等多个模块组成。本设计基于ARM9芯片S3C2410,并在此平台上移植了嵌入式linux操作系统来进行任务的调度和处理等。 电路板核心板部分设计采用6层PCB板结构,这样增加了系统可靠性,提高了电磁兼容的稳定性。数据采集系统是多道脉冲幅度分析器的核心,A/D转换直接使用了S3C2410内置的ADC(Analog to Digital Converter,模数转换器),在2.5 MHz的转换时钟下最大转换速度500 KSPS(Kilo-Samples per second,千采样点每秒),满足了系统最低转换时间≤5 μs的要求,并且控制简单,简化了外部接口电路。由于SD(Secure Digital Card,安全数码卡)卡存储容量大、携带方便、成本低等优点,所以设计中采用其作为外部的数据存储设备,其驱动部分采用SD卡软件包,为开发带来了方便。本设计采用640*480的6.4寸LCD(Liquid Crystal Display,液晶显示)屏作为人机交互的显示部分,并且通过Qt/Embedded为系统提供图形用户界面的应用框架和窗口系统。其中包括了波形显示部分和用户菜单设置部分,这样方便了用户操作。系统的数据存取方面是基于SQLite嵌入式小型数据库而进行的。为了方便数据向上位机的传输,系统设计中采用XML(Extensible Markup Language,可扩展标记语言)格式来组织传输的数据,通过基于TCP/IP(Transmission Control Protocol/Internet Protocol)协议的Linux下Socket套接字编程,来进行与上位机或PC(Personal Computer,个人计算机或桌面机)等的连接和数据传输。
上传时间: 2013-04-24
上传用户:tzl1975
The uIP Embedded TCP/IP Stack The uIP 1.0 Reference Manual
上传时间: 2013-06-21
上传用户:cazjing