电子系统设计与EDA技术期末论文

上传人:仙*** 文档编号:119242737 上传时间:2022-07-14 格式:DOC 页数:16 大小:415.50KB
返回 下载 相关 举报
电子系统设计与EDA技术期末论文_第1页
第1页 / 共16页
电子系统设计与EDA技术期末论文_第2页
第2页 / 共16页
电子系统设计与EDA技术期末论文_第3页
第3页 / 共16页
点击查看更多>>
资源描述
电子系统设计与EDA技术期末论文学号:B03211207姓名:吕娴娜日期:2007-1-11基于niosII的USB器件与PC的通信系统摘要:本系统采用Nios软核嵌入式处理器控制,使用飞利浦公司推出的ISP1362,实现了嵌入式cpu系统作为从机与pc主机的通用通信。本文从系统功能、设计原理和具体实现等方面进行了介绍。 关键词:Nios;ISP1362; OTG;USB主机控制器;软硬件构成与实现 一引 言 1.1开发背景简介Altera公司在可编程系统级芯片(SOPC)领域中处于前沿和领先的地位,其产品向全世界近14,000家客户提供超值的可编程解决方案。 Altera大学计划为全球范围内的大专院校提供先进的开发软件、可编程逻辑器件、开发工具以及完整的设计套件,有效地补充了现有的数字逻辑设计教学.所提供的软件和硬件平台适合于各种设计课程的使用,包括入门级的逻辑设计和高级的计算构架。 Nios处理器能从外设和存储器接口库中进行选择,将处理器、外设、存储器和I/O接口集成在单片FPGA中,定制自己设计的系统,并且对各种外围设备的实现提供了强大的支持平台;SOPC Builder系统开发工具可以自动生成组件以及联接组件的总线,所有软件开发任务编辑、构建、程序调试都能够在(IDE)下完成,从而简化了开发过程,降低了系统成本、复杂性以及功耗,并且通过移植到Altera的结构化ASIC中,实现低成本、大批量产品。具有可配置,长生命周期、低成本、高性能等优点,是世界上最通用的处理器。 SOPC(System on a programmable Chip,片上可编程系统)是Altera公司提出的一种灵活、高效的SOC解决方案。它将处理器、存储器、I/O接口、LVDS、CDR等系统设计需要的功能模块集成到一个PLD器件上,构建一个可编程的片上系统。它是可编程系统,具有灵活的设计方式,软硬件可裁减、可扩充、可升级,并具备软硬件在系统可编程的功能。可编程器件内还有小容量高速RAM资源。由于市场上有丰富的IPCore资源可供灵活选择,用户可以构成各种不同的系统,如单处理器、多处理器。有些可编程器件内还可以包含可编程模拟电路。除了系统使用的资源外,可编程器件内还有足够的可编程逻辑资源,用于实现其它附加逻辑。 1.2系统描述 本设计采用Nios软核嵌入式处理器,通过USB总线,ISP1362将pc机发出的数据接受并存储在niosII的数据存储区内, Nios处理器把接收到的数据从外围接口输出,本文是采用七段码LED数码管和八位LED发光二极管同时显示。1.3开发前景 已在及笔记本电脑中得到了广泛的应用,它们起到了集线器的作用,用以连接数码相机、打印机等各种外设,但目前大部分设备还不能实现彼此之间的直接通信。新的 标准正是针对这一情况而推出的,它将最终结束用电脑作为各种电子设备连接纽带的时代,借助 ,外设既可作为主机,也可作为从机,彼此之间能够互相通信,并可根据实际情况协商确定哪个设备作为主机。1.4 系统特色 本系统是在SOPC上开发的,采用Nios软核嵌入式处理器为控制中心,可以根据用户的需求灵活地进行设计。与以单片机为处理器的系统相比,功能更为强大,操作更为简单灵活。由于Nios处理器可以重新设计下载,所以产品升级、功能扩展易于实现。还可以根据不同的实际应用进行功能添加,增强了应用领域,可方便地根据用户的需求为用户量身订制产品。 二 开发方法 本设计以Nios处理器为核心,采用软、硬件结合的方法进行开发。 2.1硬件开发方法 用SOPC Builder系统综合软件来选取合适的CPU、存储器及外围器件,并定制它们的功能。 使用Quartus软件选取CycloneII系列,并对SOPC Builder生成的HDL设计文件进行布局布线;再使用Quartus选取EP1C3T144C8并对Nios系统上的各种I/O分配管脚,另外还要根据要求进行硬件编译选项或时序约束的设置。在编译的过程中,Quartus从HDL源文件综合生成一个适合目标器件的网表。最后,生成配置文件。 使用Quartus编程器和Altera下载电缆,将配置文件下载到开发板上。当校验完当前硬件设计后,还可再次将新的配置下载到开发板上的非易失存储器里。 2.2软件开发方法 在用SOPC Builder系统集成软件进行硬件设计的同时,就可以开始编写独立于器件的C软件。 SOPC Builder为每个新创建的Nios CPU 生成一个定制软件开发包(SDK)。SDK为用户提供软件开发的基础,SDK内有与外设相关的子程序被编译后生成的编译库 使用Nios SDK对软件进行编译、调试。 将硬件设计下载到开发板上后,就可以将软件下载到开发板上并在硬件上运行 三。 系统功能及技术指标 3.1系统功能Nios软核嵌入式处理器,通过USB总线,ISP1362将pc机发出的数据接受并存储在niosII的数据存储区内, Nios处理器把接收到的数据从外围接口输出,本文是采用七段码LED数码管和八位LED发光二极管同时显示。在软件和硬件的配置都下载到开发板上后,LCD上显示disconnected,然后把altera的usb blaster下载线连在旁边的usb device接口上,此时PC机能够检测到新的USB设备。Windows下通过USB viewer可以看到如下图所示:本次通信是用已有的ISP1362DcUsb测试工具进行的。主机上打开此应用程序,界面上有两个对USB从机的控制按钮,一个为16进制加一,一个为清零,de2开发板控制上的七段数码和LED二极管显示,界面如右图:3.2技术指标 DE2的时钟频率50MHz;NiosII的CPU处理速度为100Mbps;USB传输速度1.5Mbit/s;四 硬件的设计与实现4.1硬件设计思想 PC机通过USB连线将数据传给USB传输控制器ISP1362,niosII控制 ISP1362接受数据后再通过avalon总线把数据传送给NIOSII的数据存储区,nios内核把数据输出到显示设备。4.2 硬件设计 基于niosII的USB器件与PC的通信系统的硬件框图如图4.1所示。4.2.1 USB控制器ISP1362ISP1362是飞利浦公司推出的OTG解决方案系列中产品,它在单芯片上集成了一个OTG控制器、一个高级主控制器(PSHC)和一个基于飞利浦ISP1181的外设控制器。ISP1362的OTG控制器完全兼容USB2.0及OnTheGo Supplement 1.0协议,主机和设备控制器兼容USB2.0协议,并支持12Mbit/s的全速传输和1.5Mbit/s的低速传输。飞利浦由控制器、主机控制器、外设控制器、收发器、收发器和缓存器等组成,通过内部集成的总线接口可与相连控制器模块用于提供要求的所有控制、监控及交换功能。它还支持 标准规定的所有功能。若以模式进行配置,既可用作主机,也可用作外设,并支持主机与外设之间角色转换的主机通信协议( )和两种模式下的对话请求协议( -)。作为主机使用时,能够关闭以响应,而作为外设使用时,能够启动以唤醒主机。一套寄存器提供的控制及状态监控功能可以用来支持及软件。作为外设控制器时,支持两个控制端点,还能以全速及低速将多达个端点编程为任何四种传输类型。下图是封装的的引脚排列,其主要引脚功能如下:连接到内部寄存器和缓冲存储器的比特数据总线。(引脚):读信号线。低电平时表示驱动器需要读相应的缓冲存储器和寄存器。(引脚):片选信号,低电平有效。用于控制驱动器访问对应的缓冲存储器和寄存器。(引脚):写信号线。低电平时表示驱动器需要写数据到相应的缓冲存储器和寄存器。(引脚):输入输出测试。(引脚):请求输出。当它有效时,通知控制器正在请求数据传送。(引脚):请求输出。当它有效时,通知控制器正在请求数据传送。(引脚):确认输入。表明来自的传输请求已经被控制器确认。(引脚):确认输入。表明来自的传输请求已经被控制器确认。和(引脚,):连接到外部微处理器的引脚,使执行中断服务程序()。(引脚):复位输入。 (引脚):该引脚为高电平时,主机控制器处于“挂起”状态,为低电平时,唤醒主机控制器。 (引脚):该引脚电平为高时,设备控制器处于“挂起”状态,电平为低时,唤醒设备控制器。(引脚):和外部开关相连。当引脚电平为低时,打开开关以为提供下行端口;引脚电平为高时,关闭开关。(引脚):可编程时钟输出。默认时钟频率为,变化范围为。(引脚):用于决定控制器处于命令状态还是数据状态;(引脚):用于决定控制器工作于主机还是设备控制模式: 表示处于主机控制()模式;表示处于设备控制()模式。在本系统中,要在SOPC Builder中配置ISP1392的Interface to User Logic,如下图:4.3 NIOS处理器连接及管脚分配 管脚分配按照Nios开发板外接引脚功能表进行连接。 4.3.1 NIOS处理器 Nios嵌入式系统是一个用户可配置的通用RISC嵌入式处理器。它的易用性和灵活性使它成为世界上最流行的嵌入式处理器之一。Nios处理器可用于多个功能强大的开发套件,它包括一个标准外设库。Altera提供功能丰富、易于使用的NiosII处理器组合开发包。开发包为您生成完整片上可编程系统(SOPC)解决方案,提供所需的一切工具。4.3.2 Nios II外围设备及接口 Nios II外围设备及接口如表4.2所示。 表4.2 Nios II外围设备及接口 外围设备 说明 JTAG UART 通过内嵌在Altera FPGA内部的联合测试行动组(JTAG)电路,在PC主机和SOPC Builder系统之间进行串行字符流通讯 CompactFlash Interface 提供大容量存储支持 用户逻辑接口 将片内用户逻辑或片外器件连接到SOPC Builder生成的系统中 本系统中使用了用户逻辑接口把ISP1362连接到生成的系统中UART 提供通用串行接口,具可变波特率、奇偶校验、停止和数据位及可选的流量控制信号 间隔时钟 提供32比特时钟,可作为周期脉冲发生器或系统看门狗时钟 并行I/O接口 提供1比特到32比特的并行I/O接口(输入、输出、边缘采样) 串行外围设备接口(SPI) 实现工业标准串行外围设备接口,支持主设备或从设备协议 DMA控制器 与存储器进行批量数据交换,减轻CPU的负担 SDRAM控制器 提供一个简单Avalon接口,与片外的SDRAM沟通,支持8、16、32和64比特数据宽度 存储器接口 包括: 片内ROM和RAM SDRAM、SSRAM、SRAM和flash Altera的串行配置器件 4.3.2Nios II处理器管脚分配表 Nios II处理器管脚具体分配如图4.9所示。 五 软件的设计与实现 5.1 软件设计整个程序通过中断调度来完成外设功能。总线在工作的时候,系统仍然按照特定的时序和协议规范运行。如系统通过数据线上的电平变化检测到设备的接入与移出,接着主机和外设就按照事先约定的顺序执行一系列的信息交换, 即:主机重启外设主机给外设供电外设通过缺省的地址与主机通讯主机给外设分配地址主机请求外设的一系列功能和设备描述符。因此, 在 语言中, 通过顺序的编程和中断的调度,就可以完成主机系统的标准的活动。软件设计流程图如图所示。 设备初始化是否发生中断?USB中断处理:1。发送配置命令;2。接受设备状态信息3配置设备;4。分析地址查询USB主机是否有数据发送发送接收数据应答,允许发送数据查询主机USB活动判断是否挂起设备挂起六 开发环境 6.1硬件开发环境SOPC Builder SOPCBuilder工具是一个革命性的系统级开发工具,它使得集成组件时花费的时间最少。SOPCBuilder可以快速的开发定制的方案,重建已经存在的方案,并为其添加新的功能,提高系统的性能。通过自动集成系统组件,SOPC Builder允许用户将工作的重点集中到系统级的需求上,而不是把一系列的组件装配在一起这种普通的、手工的工作上面。所有版本的Altera Quartus 的设计软件都已经包含了SOPC Builder。SOPCBuilder提供了一个强大的平台,用于组建一个在模块级和组件级定义的系统。 SOPCBuilder的组件库包含了从简单的固定逻辑的功能块到复杂的、参数化的、可以动态生成的子系统等一些列的组件。这些组件可以是从Altera或其他第三方合作伙伴购买来的IP核,它们其中一些是可以免费下载用作评估的。用户还可简单地创建他们自己的定制的SOPC Builer组件。 图6.1 显示了直观的SOPC Builder的用户界面。 6.2软件开发环境Quartus Quartus软件提供最全面的设计流程。结合多种可直接进行设计应用的知识产权(IP)内核,使设计具有较好的性能和效率。Quartus软件操作方便,使您能够将产品迅速推向市场。Quartus 软件6.0为高密度FPGA设计提供了最高效和最快速的实现途径,与传统高密度FPGA设计流程相比,其设计效率显著提高。6.3调试工具SDK SOPC Builder为每个新创建的Nios CPU 生成一个定制软件开发包(SDK)。SDK为用户提供软件开发的基础,SDK由下面几部分组成: C语言头文件,包括每个外设在存储器中的地址映像和相应数据结构 与外设相关的子程序被编译后生成的编译库 用于重新编译库的Makefile文件 示例源程序和Makefile文件 在SDK中可方便地对程序进行在线调试。 七 调试过程 调试中碰到了诸多的问题,大多是硬件的问题,硬件在下载进去一般不会出现问题,但是在软件调试中,会报硬件的错,或者会出现莫名的编译错误,也就是说在niosII内核的构成中有问题,因为软件可以调试仿真,而硬件有问题比较不容易发现,下面就是我在调试过程中碰到的主要问题。1NIOS编译错误:/cygdrive/d/altera/kits/nios2_51/bin/nios2-gnutools/H-i686-pc-cygwin/bin/./lib/gcc/nios2-elf/3.4.1/././././nios2-elf/bin/ldregionram1isfull(led_clk.elfsection.text).Regionneedstobe2324byteslarger.解决方案:在syslib属性里面选了on_chip_memory,太小了,换个sdram就行2NIOS下载错误:在systemlibrary里将.text,.rodata放在sdram里时,程序在开发板上运行正常,但是我把.text和.rodata设定在flash里的时候,程序编译成功,下载到开发板上的时候就出现:UsingcableUSB-BlasterUSB-0,device1,instance0x00Pausingtargetprocessor:OKReadingSystemIDataddress0x004010B8:verifiedDownloading00000000(0%)Downloaded64KBin1.0s(64.0KB/s)Verifying00000000(0%)Verifyfailedbetweenaddress0x0and0xffffLeavingtargetprocessorpaused解决方案:.text和.rodata设置在flash上,只能flashprogrammer写到FLASH上运行,而没法调试的。调试只能下到ram中。3NIOS下载错误:UsingcableUSB-BlasterUSB-0,device1,instance0x00Pausingtargetprocessor:notresponding.Resettingandtryingagain:FAILEDLeavingtargetprocessorpaused错误原因:targetprocessor没有应答,有很多原因回造成这种情况,比如晶体没有工作,配置后的CPU没有工作等等。4NIOS编译错误:解决方案:文件往返于实验室和寝室,在不同文件夹下生成,可能造成其中相关联的配置目录指向不正确,所以在程序编译之前运行projectclean,可以清除以前生成的编译文件,再改变目录,在工程属性中更改关联的ptf文件的指向,最后编译可以解决。5NIOS编译错误:rc/newlib/newlib/libc/reent/sbrkr.c:59:Unabletoreacherrno(at0x00000020)fromtheglobalpointer(at0x00009f98)becausetheoffset(-40824)isoutoftheallowedrange,-32678to32767.collect2:ldreturned1exitstatusmake:*hello_world_1.elfError1Buildcompleted解决方案:变量类型错误6NIOS下载错误:点击run以后cantopenuart:Permissiondenied 解决方案:在syslib属性中设置的标准输入、标准输出是UART,一般情况是用jtag_uart的。7NIOS编译错误:我在板子上debug的时候,程序可以下载进去,但是最后跳出一个errosrunningoperations对话框显示:Launching(error:viewconsolenios2-gdb-serveroutpuutfordetials),我看了一下详细信息就是:targetisnotresponding(timeout),并且在工程中产生一个nios2-elf-gdb.exe.stackdump文件,内容如下:Exception:STATUS_ACCESS_VIOLATIONateip=020360B6eax=00000000ebx=000006E8ecx=0022ED64edx=0206CF14esi=0022EDC4edi=00000000ebp=00000000esp=0022ED08program=C:alterakitsnios2_51binnios2-gnutoolsH-i686-pc-cygwinbinnios2-elf-gdb.execs=001Bds=0023es=0023fs=003Bgs=0000ss=0023Stacktrace:FrameFunctionArgsEndofstacktrace解决方案:targetisnotresponding的原因是系统工作不正常,通过jtag_uart调试没有反应。需要检查硬件八 总结本学期本人选修了“电子系统设计与EDA技术”课程,通过学习及上机实践对嵌入式系统有了全面的了解和一定程度的掌握,结合DE2学习开发套件,做了不少的探索和实践,虽然层次还是较低,但学到的东西的无法估量的。 九 参考文献DE2_UserManual ,ISP1362 DatsSheet de2开发套件光盘附挑战SOC基于NIOS的SOPC设计与实践彭澄廉主编 清华大学出版社C程序设计第二版谭浩强 清华大学出版社SOPC技术实用教程 潘松 等 清华大学出版社NIOS II中用到的C_C+函数的翻译 网上摘录
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!