版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录第1章DE2-70开发包…………….….11.1开发包内容……………………..11.2DE2-70开发板的套件….………………….….21.3帮助…………….3第2章AlteraDE2-70开发板…………………….42.1设计和组成…………………….42.2DE2-70开发板结构框图………………………52.3驱动DE2-70开发板…………...9第3章DE2-70控制面板……………113.1控制面板安装………………...113.2控制LED、7段数码管和LCD显示器………133.3开关和按键……………………153.4SDRAM/SSRAM/Flash控制器和编程器…………………….163.5USB监视………………………...……………183.6PS2设备……………………….193.7SD卡…………………………..203.8音频录放………………………213.9DE2-70控制面板的整个结构………………….……………23第4章DE2-70开发板视频功能…………………..254.1视频功能的安装……………...254.2VGA显示……………………...264.3视频抓取……………………...274.4DE2_70开发板视频功能的整体结构………..28第5章使用DE2-70开发板…………..…………….305.1配置Cyclone2FPGA……………………….…305.2使用LED和SWITCH………………………....325.3使用七段数码管………………365.4时钟电路……………………....385.5使用LCD模块……………..….405.6使用扩展槽………………...….415.7VGA使用………………….…..455.824位音频编解码芯片的使用………………..485.9RS_232串口…………………..495.10PS/2串口………………..……495.11快速以太网控制器…………..505.12视频解码器………………..…525.13视频编码器的实现…………..545.14USB主机和设备的使用…………….....……555.15IrDA的使用……………….…575.16SDRAM/SRAM/Flash的使用….....................................................................................……58第6章高级范例……………..………………….…..666.1DE2-70出厂配置……………...666.2QuartusⅡ9.1和NiosⅡEDS9.1用户....................................................................................…676.3电视接收器示例…………...…676.4电视接收器画中画(PIP)示例…………….…706.5USB画笔………………...……736.6USB设备……….…………….756.7卡拉OK机……………………776.8以太网数据包的发送与接收………………...796.9SD卡音乐播放器……………..816.10音乐合成器示例…………….846.11音频的录放……………….....88第7章附录….………917.1版本历史……………………...917.2版权声明……………………...91第1章DE2-70开发包DE2-70开发包包含了用于DE2-70开发板的全部组件以及在MicrosoftWindows上运行的软件。1.1开发包内容图1.1是DE2-70开发包的照片。DE2-70开发包中包含以下组件:·DE2开发板;·用于FPGA编程和控制的USB电缆;·一张DE2-70系统光盘,包括DE2-70的说明文件和帮助资料如用户手册、控制面板的作用、参考设计和范例、器件的数据手册、指南和一套试验练习题;·CD-ROMs里面有Altera’sQuartusII网络版和NiosII嵌入式设计评估版软件;·DE2-70板的六个硅胶支撑柱。一些I\O口的插针,以便于检测板子的I/O扩展设备;·开发板的塑料包装;·12V插墙式直流电源。1.2DE2-70开发板的套件按照下面的步骤来安装DE2-70开发板:·如图1.2所示,在DE2开发板的六个铜脚上套上硅胶套;·塑料的封面为开发板提供了特别的保护,这层塑料是用螺丝安装在板的表面的。1.3帮助如果你遇到问题可以从下面的地址中获得帮助:·AlteraCorporation101InnovationDriveSanJose,California,95134USAE-mail:university@·TerasicTechnologiesNo.356,Sec.1,FusingE.Rd.JhubeiCity,HsinChuCounty,Taiwan,302E-mail:support@Web:DE2.第2章AlteraDE2-70开发板这一章将展示DE2开发板的细部特写,介绍它的设计特点。2.1设计和组成图2.1为DE2开发板的照片,它描述了开发板的布局,指出了接口和关键部件的位置。DE2开发板有许多特点,它可以使用户实现多种电路设计,从简单电路到多媒体应用。DE2开发板提供以下硬件:·AlteraCycloneII2C70FPGA芯片;·Altera串行配置设备—EPCS16;·用于编程的USBBlaster(板上)和用户API控制,支持JTAG和主动配置(AS)编程模式;·2-MbyteSSRAM;·2个32-MbyteSDRAM;·8-MbyteFlashmemory;·SD卡插槽;·四个按键;·18个拨动开关;·18个红色发光二极管;·9个绿色发光二极管;·50-MHz和28.63-MHz时钟频率振荡器;·拥有输入输出和麦克风接口的24位CD音质多媒体数字信号音频编解码器;·可以VGA(video-graphics-array视频-图像-阵列)输出的VGA数据采集和控制器(10位三倍高速数据采集和控制系统);·2个视频解码器(NTSC制式/PAL制式/SECAM制式)和视频输入接口;·10/100以太网控制器接口;·具有A型和B型连接口的USB主控制器和从属控制器;·RS-232收发器和9针连接器;·PS/2鼠标/键盘连接器;·IrDA收发器;·1个SMA连接器;·有二极管保护的两个四十针扩展接口。除这些硬件特点之外,DE2-70开发板还有支持标准输入输出接口的软件和一个便捷的各个部分的控制面板。软件还提供了大量展示DE2-70开发板高级能力的范例。为了使用DE2-70开发板,用户应该熟悉QuartusII软件。通过读DE2-70开发板使用指南(GettingStartedwithAltera’sDE2-70Board)和QuartusII入门介绍可以获得必要的知识(存在三个版本的入门设计方法,分别是Verilog,VHDL和原理图)。在与DE2-70开发板一起的DE2-70系统光盘的DE2_70_tutorials目录下提供了这些指南,也可以在Altera’sDE2-70网页上去找。2.2DE2开发板的结构框图图2.2给出了DE2-70开发板的结构框图。为了给用户提供最大的方便,所有的接口均通过FPGA驱动。因此,用户可设置FPGA去执行任何一种系统设计。以下是关于图2.2的框图更详细的信息:CycloneII2C70FPGA·68416个逻辑单元;·250个M4KRAM存储块;·多达1152000比特的RAM;·150个嵌入式乘法器;·4个锁相环;·622个用户I/O口;·896脚细线型BGA封装。串行配置设备和USBBlaster电路·AlteraEPCS16串行配置设备;·用于编程和用户应用程序编程接口控制的板上USBBlaster;·支持JTAG和AS编程模式。同步静态随机存储器(SSRAM)·2-Mbyte标准同步SRAM;·512Kx36bits架构;·可作为NiosII处理器与DE2-70控制面板的存储器。同步动态随机存储器(SDRAM)·两个32-Mbyte单数据传输率同步动态随机存储芯片;·4Mx16bitsx4banks构架;·可作为NiosII处理器与DE2-70控制面板的存储器。闪速存储器(Flashmemory)·8-Mbyte或非门闪存;·支持字节和字模式存取;·可作为NiosII处理器与DE2-70控制面板的存储器;安全数字(SD)卡插槽·提供SPI和1-位SD模式对SD卡的访问;·可作为带DE2-70SD卡驱动器的NiosII处理器的存储器。按钮开关·4个按钮开关;·施密特触发电路去抖;·通常高电平;按下时产生低电平脉冲。拨动开关·18个拨动开关作为用户输入;·拨到下面(靠近DE2-70开发板的边缘)时产生逻辑0;拨到上面时产生逻辑1。时钟输入·50-MHz晶体振荡器;·28.63-MHz晶体振荡器;·SMA型外部时钟输入接口。音频编码解码器·WolfsonWM8731224位积分式音频编码解码器;·线性电平输入,线性电平输出输出和麦克风输入插孔;·采样频率:8-96KHz;·适用于MP3刻录机、个人数字助理、智能电话、录音机等。视频输出·采用ADV7123140-MHz三10位高速视频数/模转换器;·带有15脚高密度电脑输入接口;·支持100Hz刷新率时的高达1600x1200的分辨率;·可与CycloneIIFPGA联合使用实现高性能视频编码器。NTFC/PAL/SECAM制式视频解码电路·采用ADV7180多格式SDTV视频解码器;·支持世界范围内的NTFC/PAL/SECAM制式;·一个10位的模/数转换器,4X过采样用于复合视频;·支持复合视频RCA接口输入;·支持数字信号输出格式:8位ITU-RBT.656YCrCb4:2:2output+HS,VS和FIELD。·适用:DVD录像机,液晶电视,机顶盒,数字电视,带接口的数字设备和视频画中画显示。10/100以太网控制器·集成带有一个总处理器接口的MAC和PHY;·支持100Base-T和10Base-T;·支持带10Mb/s和100Mb/s自动MDIX的全双工操作;·全部符合IEEE802.3u标准;·支持IP/TCP/UDP校验求和操作与校验;·支持半双工流控制的后压方式。USB主/从控制器·完全遵从USB2.0规范;·支持高速与代低速数据传输;·支持USB主机和驱动器;·两个USB口(A作为主机接口,B作为驱动器接口);·可为大多数处理器提供高速并行接口;支持带有友晶科技驱动器的NiosII;·支持可编程I/O口和直接存储器(DMA)。串行口·一个RS-232口;·一个PS/2口;·DB-9作为RS-232串口连接器;·PS/2连接器连接PS2鼠标或键盘到DE2-70板。红外端口收发器·拥有一个115.2kb/s的红外收发器;·32mALED驱动电流;·集成电磁干扰屏蔽;·IEC825-11级眼保护;·边沿侦测输入。两个40针扩展跳线·72个CycloneIII/O口和8只电源和地线端连接到两个40针扩展跳线;·按照可接插标准40针IDE硬驱动排线标准设计;·提供二极管和电阻保护。2.3驱动DE2-70开发板DE2-70开发板使用预先配置的程序来演示该板的功能。这个程序也可以用来判断开发板是否工作正常。驱动开发板按照以下步骤进行:1.用提供的USB线将主机和DE2-70开发板上的USB连接器连接起来。为了实现主机和DE2-70开发板之间的通信,主机需要安装AlteraUSB驱动软件。如果主机没有安装驱动软件,可以按照GettingStartedwithAltera’sDE2-70Board指南里介绍的方法安装。指南可在DE2-70开发板的系统CD-ROM中找到;2.连接12V电源适配器到DE2-70开发板;3.连接VGA显示器到DE2-70板的VGA口;4.连接耳机到DE2-70开发板的音频输出口;5.将DE2-70开发板左边边缘的RUN/PROG开关打到RUN位置;PROG位置只在AS方式编程时才使用;6.按下DE2-70开发板上ON/OFF开关打开电源。照以上做后将会观察到以下几点:·所有LED都在闪烁;·所有7段数码管循环显示数字0到F;·LCD显示器显示“WelcometotheAlteraDE2-70Board”;·VGA显示器显示图2.3画面;·将SW17拨动开关置于下面的位置,你将听到1KHz的声音。·将SW17拨到上面的位置,并将一音频播放器插在DE2-70开发板的音频输入口,在耳机里你将听到你的音频播放器(MP3、PC、iPod等)里的音乐;·你也可以连接一个麦克风到DE2-70开发板上的麦克风输入口,你的声音将和音频播放器里播放的音乐混合在一起。第3章DE2-70控制面板DE2-70开发板带有的控制面板使得用户可以将多种组件通过连到主机上的USB连接器连接到开发板上。该控制面板可以用来检验板上组件的功能,或者在开发RTL代码时作为一个调试工具来使用。本章首先介绍控制面板的一些基本功能,然后用图表块的形式介绍它的结构,最后介绍它的性能。3.1控制面板安装控制面板工具软件在DE2-70系统光盘的“DE2_70_control_panel”文件夹中,要安装它,只需将整个文件夹复制到你的主机上,运行“DE2_70_Control_Panel.exe”来启动控制面板即可。为了使控制面板运行,首先得往CycloneIIFPGA里下载相应的控制程序,这些控制程序包括一个.sof文件和一个.elf文件。只要点击面板上的“DownloadCode”按钮就可以将该控制程序下载到其中。控制面板通过USB-Blaster[USB-0]连接器来要求QuartusII和NiosII工具来下载这些控制程序到FPGA中。其中,.sof文件下载到FPGA中,而.elf文件则通过用户选择来下载到SDRAM-U2或SSRAM中。激活控制面板,可以照下面的步骤进行:1.确认你的电脑上已成功安装QuartusII和NIOSII软件;2.连接好提供的USB线和12V电源,然后打开电源开关;3.将RUN/PROG开关置于RUN位置;4.在主机上运行DE2_control_panel.exe程序,出现如图3.1所示的控制面板用户界面。5.在控制面板上选择目标存储器,SDRAM-U2或者SSRAM。注意,.elf文件会被下载到目标存储器中,而在以后的存储器读取操作中是只读的。6.点击“DownloadCode”按钮。注意,控制面板会始终占用USB口直到关闭。在关闭USB口之前,用户不能下载配置文件到FPGA中。7.控制面板现在就可以使用了。通过设置某些LED的值并观察DE2-70开发板上的结果。DE2-70控制面板的概念如图3.2。实现控制功能的“控制代码”配置在FPGA里,它和活动在主机里的控制面板窗口通过USB口进行通信。图形界面用来发布命令到控制代码,它用来处理主机和DE2-70开发板之间的所有请求和数据传送。DE2-70控制面板可以用来点亮LED、修改7段数码管和液晶显示器的显示值、监视按键/开关状态、读/写SDRAM、SSRAM和Flash存储器、监视USB鼠标的状态、与PS2键盘会话以及读取SD卡的特定信息。可以从Flash读出/写入字或整个文件的特点使得用户开发多媒体应用技术(Flash音频播放器,Flash图片察看器)时不用去关心怎么建立一个编程器。3.2控制LED、7段数码管和LCD显示器控制面板的一个简单功能就是设置LED,7段数码管和LCD字符显示器的值。选择LED标签出现图3.3所示窗口。在这里,你可以通过选择直接打开或关闭单独的LED,也可以点击“全打开”或“全关闭”。选择7-SEG标签会出现图3.4所示窗口。在此标签页中,可以直接使用Up-Down控制按钮和Dot复选框来点亮指定的段,板上对应段的状态将会立刻更新。选择LCD标签会得到如图3.5所示的窗口。在这里,用户可以将LCD要显示的文本在LCD文本框中写入并点击相应的“Set”按钮即可。用户在进行典型设计时,并不需要使用对一个简单显示器件设置任意值的功能。然而,当用户怀疑出现故障时,它为校验器件是否运行正确提供了一个简单的方法。因此,它可以用作发现并修理故障。3.3开关和按键选择按键标签会出现图3.6所示界面。该设计功能用来实时监视开关和按键的状态并显示在图形用户界面中,它可以用来检验开关和按键的性能好坏。点击Start按键来进入按键/开关状态监视过程,按键捕获从Start开始到Stop结束。在监视过程中,板上按键和开关的状态在图形用户界面中实时地显示和更新。点击Stop将会结束监视过程。用户在进行典型设计时,并不需要按键和开关状态检测功能。然而,它却为用户提供了检验按键和开关工作是否正常的一个简单方法。因此,它可以用来发现并修理故障。3.4SDRAM/SSRAM/Flash控制器和编程器控制面板可以对DE2-70开发板上的SDRAM、SSRAM和Flash进行读写操作。我们将介绍怎样访问SDRAM-U1,可以用同样的方法对SDRAM-U2、SRAM和FLASH进行访问。点击Memory标签并选择“SDRAM-U1”选项得到图3.7所示的窗口。请注意存储.elf文件的目标存储器是只读的,而且在写入数据之前要擦除flash。键入想要存放的地址,想要写入的数,然后点击“Write”按钮,这样就可以写入一个16bit的字到SDRAM。点击“Read”可以读取地址中的内容。图3.7描述了写入十六进制数06CA到地址200的结果,后面是读取相同地址的内容。用控制面板的连续写入功能写入一个文件到SDRAM的步骤如下:1.在Address框中列入起始地址;2.在Length框中填入将要写入字节的数目。如果要写入的是整个文件,那么则要在FileLength框中打标志来代替字节的数目;3.初始化数据写入,点击WriteaFiletoMemory按钮;4.当控制面板响应并出现标准对话框要求输入源文件时,用平常的方法列入要输入的文件。控制面板也支持扩展名为.hex文件的下载。扩展名为.hex的文件必须是ASCII文本文件,这样存储器就能用ASCII字符来代替十六进制数来进行存储。例如,一个文件中有下列一行0123456789ABCDEF定义了8个8位的值:01,23,45,67,89,AB,CD,EF。这些值将被连续地载入存储器中。控制面板的连续读取功能用来读取SDRAM-U1中的内容并将它们放入文件中,步骤如下:1.在“Address”框中列入起始地址;2.在“Length”框中输入要复制到文件中的字节数。如果要复制整个SDRAM-U1中的内容(包括所有32M字节),则在“Entire3.点击“LoadMemoryContenttoaFile”按钮;4.当控制面板响应并弹出标准对话框要求列入目标文件时,按平常的方法列入要得到的文件。用户可以用同样的方法来访问SSRAM和Flash,需要注意的是用户在对flash写入数据前应进行擦除操作。3.5USB监视控制面板给用户提供了一个USB监视工具用来实时监视DE2-70板上所连接的USB鼠标的状态。鼠标的移动和三个按键的状态都会通过图形和文本界面显示出来。鼠标的移动被翻译成坐标(x,y),范围在(0,0)~(1023,767)之间。该功能可以用来检验USB主机的性能好坏。使用USB鼠标监视工具需遵循如下步骤:1.选择USB标签得到如图3.8所示界面;2.在DE2-70开发板上的USBHOST口中插入USB鼠标;3.点击Start键开始USB鼠标监视过程,按键捕获从Start开始到Stop结束。在监视过程中,USB鼠标的状态会实时地更新并显示在控制面板的图形用户界面窗口中,点击Stop键终止监视过程。3.6PS2设备控制面板给用户提供了一个可以实时接收PS2键盘输入的工具,接收的输入代码将会被翻译成ASCII码并显示在控制窗口中,只有可视的ASCII码能够被显示。对与控制键来说,只有“回车”键被执行。此项功能可以用来检验PS2接口的好坏。请按以下步骤来使用PS2设备:1.选择PS2标签得到如图3.9所示界面;2.然后,在FPGA开发板上插入PS2键盘;3.点击Start按键来进行PS2键盘的输入操作,按键捕获从Start开始一直到Stop结束;4.在接收过程中,用户可以点击键盘按键。输入数据会实时地显示在控制窗口中。点击Stop来中止监视过程。3.7SD卡该设计功能用来读取SD卡的识别信息和规格信息,采用1-bitSD模式来访问SD卡。此项功能还可以用来检验SD卡接口的好坏。遵循如下步骤即可以使用SD卡:1.首先,选择SD-CARD标签得到如图3.10所示窗口;2.在DE2-70开发板上插入SD卡,然后点击Read按键来读取SD卡。SD卡的识别信息和规格信息将会显示在控制窗口中。3.8音频录放这个有趣的音频工具用来控制DE2-70板上音频芯片的音频录放。它可以播放存储在所给的WAVE文件里的音频、录音以及像wave文件一样的音频信号。WAVE文件必须是解压缩的、立体声的(每次采样两个通道)和每通道16位。采样率必须是96K、48K、44.1K或8K。遵循以下步骤可以使用这个工具:1.选择Audio标签出现如图3.11所示界面;2.在板上的LINE-OUT插口上插入耳机或扬声器;3.在下拉列表中选择“PlayAudio”项,如图3.11所示;4.点击“OpenWave”选择WAVE文件。所选取音频文件的波形会显示在波形窗口中,其采样率也会显示在采样率下拉列表中。你可以拖曳滚动条来浏览波形,在波形窗口中,蓝线代表左通道信号而绿线则代表右通道的信号。5.点击“StartPlay”开始播放音频。程序会将波形下载到SDRAM-U1中,接着对音频芯片进行配置,然后开始播放过程。你可以从耳机或扬声器中听到音频声音,要停止音频播放只需点击“StopPlay”即可。用麦克风录音请按以下步骤:1.在板上的MIC插口插入麦克风;2.在下拉列表中选择“RecordMIC”项并选择想要得到的采样率,如图3.12所示;3.点击“StartRecord”开始录音。程序会配置音频芯片来进行MIC录音,将MIC端口的音频信号进行恢复以及将音频信号保存在SDRAM-U1中。4.点击“StopRecord”停止录音。最后,保存在SDRAM-U1中的音频信号会上传至主机并显示在波形窗口中。点击“SaveWave”将波形保存为一个WAV文件。从LINE-IN端口录音,请将音频信号源连接到板上的LINE-IN端口,操作步骤和从MIC端口录音一样。3.9DE2-70控制面板的整个结构DE2-70控制面板基于CycloneIIFPGA中运行的NIOSII系统和SDRAM-U2或SSRAM。软件部分通过C代码来实现,硬件部分在SOPCbuilder中用Verilog代码来实现,这使有经验的用户可以改变控制面板的功能。这些代码都放在DE2系统光盘中的DE2_70_demonstrations。为了能够运行控制面板,用户必须首先按照3.1部分来进行配置。图3.13所描述了控制面板的结构。每个输入输出器件都是由固化在FPGA芯片中的NIOSII处理器来控制的,与电脑的连接是通过USBBlaster来实现的。NIOSII处理器会将电脑发送来的指令进行翻译并执行相应的动作。音频数模转换(AudioDAC)和FPGA中查找表的连接是用于产生1KHZ的测试音频信号。为了让用户使用并测试他们的IP核(用verilog描写的)时不需要使用复杂的应用程序接口控制软件和内存控制器,我们提供了集成的控制环境包括一个C++软件控制器,一个USB控制器,和一个多端口SRAM/SDRAM/FLASH控制器。第4章DE2-70开发板视频功能带视频功能的DE2-70开发板允许用户从主机访问板上的视频组件,主机通过USB-Blaster与开发板进行通信。该功能可用来检验板上视频组件的性能好坏、接收视频输入端口发送来的视频信息以及通过VGA端口显示固定格式的视频信号。这一章首先介绍了视频功能控制面板的一些基本功能,然后描述了它的结构框图,最后介绍了它的性能。4.1视频功能的安装视频功能在DE2-70系统光盘的“DE2_70_video_utility”文件夹中,要想安装,只需要复制整个文件夹到你的电脑上,然后通过执行“DE2_70_VIDEO.exe”打开视频功能即可。在控制面板响应任务之前,必须将配置文件下载到你的FPGA板上。配置文件包括一个.sof文件和一个.elf文件,只需在程序中简单的点击“DownCode”按键就可以将代码下载进去。程序会通过QuartusⅡ和NiosⅡ工具和USB-Blaster[USB-0]来将控制代码下载到FPGA板中。.sof文件下载到FPGA中,而.elf文件下载到SDRAM-U1中。按照以下步骤来安装视频功能:1.确认你的电脑上QuartusⅡ和NiosⅡ都已成功安装;2.将提供的USB电缆和USBBlaster口连好,连好12V电源并将开关拨到ON位置;3.将RUN/PRON开关拨到RUN位置;4.在电脑上运行DE2_70_VIDEO.exe,出现视频功能用户界面如图4.1所示;5.点击“DownloadCode”按键,控制面板会占据USB口直到你关闭它;除非你关闭USB口,否则你将无法用QuartusⅡ下载配置文件到FPGA中。6.视频功能现在已经设置好,可以使用了。4.2VGA显示在DE2-70视频功能中选择Display标签会出现如图4.2所示的窗口。该设计功能可以将一幅图像从主机下载到FPGA中以及输出分辨率为640×480的图像至VGA接口。请按以下步骤来使用视频功能:1.将VGA显示器连接到板上的VGA端口;2.点击Load按键并指定一个用于显示的图像文件,可以是一个位图或jpeg格式的文件。所选择的图像文件会显示在视频功能的显示窗口中;3.选择ImagePositioning工具来使图像适合VGA640×480的显示尺寸;4.点击Display按键开始将图像下载到DE2-70开发板中;5.下载完毕后,你将会在VGA显示器中看到欲显示的图像。4.3视频抓取选择Capture标签会出现如图4.3所示的窗口。该功能可以从视频源中抓取图像,或是从FPGA板上发送图像到主机中,输入视频源可以是PAL或NTSC制式的信号。请按以下步骤从视频源中抓取图像:1.连接一个视频源,如VCD/DVD播放器或NTSC/PAL摄像机到开发板的VIDEOIN1或VIDEOIN2端口。2.指定视频源为VIDEOIN1或VIDEOIN2。3.点击Capture按钮启动抓取过程。然后你将看到所抓取图像显示在视频应用的显示窗口中,图像尺寸也会显示出来。4.用户可以点击Save按钮来保存抓取图像为bitmap或jpeg文件。4.4DE2-70开发板视频功能的整体结构DE2-70视频应用以运行在CycloneⅡFPGASDRAM-U2或SSRAM中的NIOSⅡ系统为基础。软件部分用C代码实现;硬件部分用SOPCbuilder和Verilog代码实现,这使有经验的用户可以改变视频应用的功能,这些代码都放在DE2-70系统光盘的DE2_70_demonstrations目录下。图4.4描述了该视频应用的方框图。每一个输入输出设备由实体化的NIOSⅡ处理器进行控制,DE2-70和主机之间的通信通过USBBlaster连接实现。NIOSⅡ处理器对PC发来的命令进行翻译并执行相应的操作。视频显示的控制流程如下面所描述:1.主机将原始图像数据下载到SDRAM-U2中。2.主机发布一个“显示”命令到NiosⅡ处理器。3.NiosⅡ处理器对接收的命令进行翻译并通过Multi-PortSSRAM控制器从SDRAM中将原始图像数据移动到SSRAM中。4.VGA控制器连续不断地从SSRAM中读取原始图像数据并将其发送到VGA端口。视频抓取的控制流程如下面所描述:1.主机发布一个“抓取”命令到NiosⅡ处理器。2.NiosⅡ处理器翻译该命令并控制Video-In控制器抓取原始图像数据送入SSRAM。抓取完成后,NiosⅡ处理器从SSRAM中复制原始图像数据到SDRAM-U2中。3.主机从SDRAM-U2中读取原始图像数据。4.主机转换原始图像数据到RGB色域并显示。第5章使用DE2-70开发板这一章将介绍如何使用DE2-70并介绍它的每个I/O设备。5.1配置Cyclone2FPGA从计算机向DE2-70装载电路设计的过程在Quartus2Introduction帮助中有过介绍。这个帮助可以在光盘的DE2-70tutorials目录下找到。我们建议用户先阅读这个帮助,然后参考下面的简明介绍。DE2-70包含一个存储了Cyclone2FPGA配置数据的串行EEPROM芯片。每次加电时,这个配置将自动从EEPROM装载到FPGA中。使用Quartus2软件可以随时对FPGA进行编程,同样也可以修改存储在EEPROM中的非易失数据。这两种编程方法在下面介绍。1.JTAG编程:在这个以IEEE标准JointTestActionGroup命名的编程方法中,配置数据流是直接下载到Cyclone2FPGA的。FPGA将保存这个配置只要板子一直供电,断电后该配置将丢失。2.AS(ActiveSerial)编程:这种方法中,配置数据流装载在alteraEPCS16串行EEPROM芯片中。它存储的数据为非易失性的,因此板子断电后信息仍然存在DE2-70中。当电源打开,在EPCS16中的配置将自动装载到FPGA中。下面几节描述了JTAG和AS编程的步骤。这两种方法都需要DE2-70通过USB电缆连接到计算机进行。用这种方式开发板将被电脑识别为alteraUSBBlaster设备。在计算机上安装必须的驱动软件的步骤在DE2-70系统光盘的GettingStartedwithAltera’sDE2-70Board中有介绍。以JTAG模式配置FPGA图5.1显示了JTAG的配置。进行以下步骤将配置数据流装载到FPGA中:·确认DE2-70板已经接好电源;·将提供的USB电缆连接到DE2-70的USBBlaster端口(见图2.1);·将RUN/PROG开关(在板的左侧)置于RUN的位置以配置JTAG编程电路;·现在FPGA可以用Quartus2Programmermodule选择一个.sof为扩展名的配置文件来编程。在AS模式中配置EPCS16图5.2显示了AS的配置。进行一下步骤将配置数据流装载到EPCS16串行EEPROM设备中:·确认DE2-70板已经接好电源;·将提供的USB电缆连接到DE2-70的USBBlaster端口(见图2.1);·将RUN/PROG开关(在板的左侧)置于PROG的位置以配置JTAG编程电路;·现在FPGA可以用Quartus2Programmermodule选择一个.pof为扩展名的配置文件来编程;·一旦编程操作结束,将RUN/PROG置于RUN位置,然后通过关闭和打开电源开关来复位开发板,这样EPCS16中的新配置数据就被装载入FPGA芯片了。5.2使用LED和SWITCHDE2-70提供了四个按钮开关。每个开关都用了施密特触发器消除抖动,如图5.3。施密特触发器的四个输出KEY0,KEY1,KEY2和KEY3直接连接在FPGA上。每个开关输出一个逻辑高电平(3.3v),当按下时输出低电平(0v)。因为他们已经消除了抖动,所以它们适合用作电路的时钟或复位输入。DE2上有18个扳动开关(滑块)。这些开关没有消除抖动,它们是用于输入对电平敏感的数据信号的。每个开关直接连接FPGA的一个引脚。当一个开关在DOWN位置(靠近板子的边缘)时,输出低电平(0V),当开关在UP位置时输出高电平(3.3V)。DE2上有27个用户可控的LED。其中18个红色LED是位于18个拨动开关的上方,8个绿色LED位于按钮开关的上方(第9个绿色LED是在7段数码管的中间)。每个LED是直接被一个FPGA的端口驱动的,端口高电平时点亮LED,低电平时LED熄灭。图5.4给出了按键和开关电路图。图5.5给出了LED电路原理图。连接到拨动开关的FPGA端口名在表5.1中列出。同样,连接按钮开关和LED的端口名在表5.2和表5.3中列出。5.3使用七段数码管DE2有八个七段数码管。它们被分为两组,每组四个,是用于显示各种大小的数字的。如图5.6所示。七段数码管连接到FPGA的引脚,提供一个低电平给段码输入端,则相应的段将会被点亮,高电平将使它熄灭。每个管子的一段被依次标识为0到6,图5.7给出了具体的标识位置。除此之外,每个管子的小数点则被标识为DP。表5.4显示了七段数码管和FPGA引脚的连接。5.4时钟电路DE2有两个振荡器提供28.86MHz和50MHz的时钟信号。这两个时钟信号都连接到了FPGA芯片对应的管脚上,用于对用户逻辑进行计时。另外,28.86MHz的振荡器还用来驱动电视解码器。板子还有一个SMA接口用于将外部时钟输入板子。除此之外,所有这些时钟输入都连接到了FPGA芯片上的锁相环时钟输入管脚上,允许用户使用这些时钟来作为锁相环电路的时钟源。DE2-70的时钟原理图如图5.8所示,与之相关的引脚分配在表5.5中。5.5使用LCD模块LCD模块有内建的字体可用于显示字符,只要向显示控制器HD44780发送合适的指令即可。详细信息见该芯片数据手册,可以从生产厂商的网址中和DE2-70的系统光盘Datasheet/LCD文件夹中找到。LCD模块和FPGA的连接原理图见图5.9。引脚分配见表5.6。注意,现在DE2/DE2-70板上使用的LCD模块不带背景光。因此,LCD_BLON信号在用户的设计工程中不能使用。5.6使用扩展槽DE2-70提供了2个40管脚的扩展槽,每个槽有36个管脚直接连接到FPGA上,另外有DC+5V(VCC5),DC+3.3V(VCC33)和两个GND管脚。在这36个I/O管脚中,有4个管脚与FPGA上的锁相环时钟输入和输出端相连,以允许扩展子卡来连接到FPGA的锁相环上。扩展槽上的I/O口电平可以通过JP1调整到3.3V,2.5V或1.8V。由于FPGA扩展的I/O口都连接到了BANK5上且VCCIO电压(VCCIO5)通过JP1来控制。因此,用户可以通过跳线来选择VCCIO5的输入电压为3.3V、2.5V还是1.8V,进而控制I/O管脚电平。表5.7列出了JP1跳线的设置情况,JP1的引出管脚如图5.10所示。最后,图5.11给出了相关原理图,扩展槽的每个引脚都连接到两个二极管和一个电阻用来在出现高电压或低电压时保护电路。图中每个扩展槽只显示了两个引脚的保护电路,但是实际电路包括了所有的72个引脚,表5.8给出了管脚的分配情况。5.7VGA使用DE2-70开发板集成了一个支持VGA输出的16针脚D-SUB连接器。CycloneIIFPGA直接提供给VGA同步信号,同时模拟信号设备ADV7123中的三个10位高速视频芯片DAC被用作模拟数据信号(红,绿和蓝)发生器。这些电路组合最高能支持像素为1600x1200的分辨率(100Mhz),原理图如图5.12所示。在众多的教育网站上都可以查到VGA同步时序规格和RGB(red、green和blue)相关数据(如搜索“VGAsignaltiming)。图5.13说明了VGA显示器在正常工作时每一行所需的最基本的时序要求。显示器的行同步输入(hsync)是一个持续规定时间(图中所给的时间常数a)的低电平脉冲,这个脉冲表示一行数据的结束和下一行数据的开始。显示器的数据输入(RGB)必须在hsync脉冲触发后被置为一段时间(这被称作后沿,即为表中给出的时间常数b)的0电平,紧接着是显示器的显示时间间隔(即常数c)。在这个时间段内RGB数据会驱动在本时间段显示行的下一行的所有像素。最后,在下一个hsync脉冲到来之前,RGB信号必须在一段被称作是前沿(即时间常数d)的时间内被置为低电平。场同步信号(vsync)的时序与图5.13中所示一样,但不包括标志一帧结束和下一帧开始的vsync脉冲以及水平刷新时间相关的数据。表5.9和5.10中列出了在不同分辨率情况下水平和垂直刷新率的常数a、b、c、d。在制造商的网站和DE2-70系统自带的CD-ROM中都可以找到如何使用ADV7123中DAC视频芯片的相关详细信息。在表5.11中列出了连接CycloneIIFPGA和ADV7123的引脚分配情况。在6.2、6.3和6.4小节中给出了一段驱动VGA显示器的样本代码。5.824位音频编解码芯片的使用DE2-70开发板通过集成的WolfsonWM8731音频编解码芯片(audioCoder/DECoder)提供对24位高保真音频的支持。此芯片提供麦克风声音输入、排线输入及输出端口,它的声音文件的频率采样范围为8kHz到96kHz。可通过连接到CycloneIIFPGA引脚的I2C总线串行接口实现对WM8731芯片的控制。图5.14中给出了电路原理图,表5.12中列出了FPGA的引脚分配情况。在制造商的网站和DE2-70系统自带的CD-ROM中都可以找到如何使用WM8731编解码芯片的相关详细信息。5.9RS_232串口DE2-70开发板采用ADM3202收发芯片和一个九针D-SUB连接器用于RS_232通讯。关于如何应用收发芯片的详细手册请见芯片制造商网站上的相关资料,或者DE2-70系统所带的CD-ROM。图5.15显示了相关硬件的原理图,表5.13列出了CycloneII中FPGA引脚的分配情况。5.10PS/2串口DE2-70开发板集成了一个标准的PS/2接口和一个连接器,适用于PS/2键盘和鼠标。除此之外,用户可以在DE2-70开发板上通过插入一个扩展的PS/2Y型电缆来使用PS/2键盘和鼠标进行仿真。图5.16为PS/2单元电路的原理图。关于如何使用PS/2键盘和鼠标的一些技巧可以在众多的教育网站上使用合适的收索查到。在表5.14中列出了与PS/2相关接口引脚分配情况。5.11快速以太网控制器DE2-70开发板通过DavicomDM9000A快速以太网控制芯片提供网络支持。DM9000A芯片集成了一个通用处理接口,16KbytesSRAM,一个多媒体接入控制电路单元(MAC)和一个10/100M的网卡。图5.17为快速以太网接口的原理图,表5.15列出了相关引脚的分配情况。关于如何更好的使用DM9000A请参照芯片的数据表及器件手册。这些在制造商的网站和DE2-70系统所带的CD-ROM的数据表文件夹中都找得到。5.12视频解码器DE2-70开发板配备了两个ADV7181视频解码芯片。ADV7181是一个完整的视频解码芯片,它能自动检测并转换标准模拟电视信号基带信号(NTSC制式、PAL制式和SECAM制式)为符合8位ITU-RBT.656接口标准的4:2:2形式的视频数据组合。ADV7181芯片和众多的视频输入输出设备兼容,包括DVD播放器,磁带信号器,广播信号源和安全监控摄影机。集成于TV解码芯片内的各种寄存器能够用一个和CycloneIIFPGA相连的串口I2C总线编程,参考电路如图5.18。注意,视频解码芯片1(U11)和视频解码芯片2(U12)的I2C地址分别为0x40和0x42。引脚分配情况见表5.16。ADV7181芯片的详细信息可以在制造商的网站上找到,或者从DE2-70系统自带的CD-ROM的数据文件中查阅。5.13视频编码器的实现虽然DE2-70板不包含电视编码器芯片,但是ADV7123(10位高速三倍模数转换器)能通过CycloneIIFPGA中的已实现的数字处理部分来实现专业品质的电视编码器。图5.19显示该种实现方式的模块图。5.14USB主机和设备的使用DE2-70板同时提供USB主机和设备接口,使用PhilipsISP1362单芯片USB控制器。主机及设备控制器符合USB标准Rev.2.0,支持全速(12Mbit/s)和低速(1.5Mbit/s)数据交换。图5.20显示USB线路的原理图;相关接口的引脚分配情况见表5.17。使用ISP1362器件的具体信息请查阅设备的数据表和设计指南,所有这些文件可以在制造商的网站和DE2-70SystemCD-ROM的数据表文件夹找到。USB应用中最有挑战性的部分在于它所必须的软件驱动器的设计。在6.4和6.5部分,有两个完整的USB驱动器示例,它们同时作用于主机和外设的应用。这些示范提供了NiosII处理器软件驱动的例子。5.15IrDA的使用DE2-70板可以提供简单无线通讯媒体,其中利用了AgilentHSDL-3201低功耗红外线收发器。该器件的数据表在DE2-70SystemCD-ROM的Datasheet\IrDA文件夹中。注意该器件支持的最高传输速率为115.2Kbit/s且发送方和接受方传输速率必须相同。图5.21显示了IrDA通讯连接的原理图。如何使用IrDA连接发送和接收数据请点击如下网站:/webseminars/documents/IrDA_BW.pdf相关接口的引脚分配在表5.18。5.16SDRAM/SRAM/Flash的使用DE2-70板提供一个2-Mbyte的SSRAM,一个8-Mbyte的Flash存储器和两个32-Mbyte的SDRAM芯片。图5.22、5.23和5.24为存储器芯片原理图。各个相关设备的引脚分配情况列见表5.19、5.20和5.21。存储器芯片的数据表提供在DE2-70SystemCD-ROM的Datasheet/Memory文件夹中。第6章高级范例本章提供了许多应用于DE2-70开发板的高级电路的例子。这些电路给出了反映板上主要特点的范例,如它的音频和视频功能、USB和以太网互联等。给出了每一个范例的CycloneⅡFPGA(或EPCS16串行EEPROM)配置文件和全部Verilog源代码,所有相关文件都可以在DE2-70的系统光盘中的ED2_70_demonstrations文件夹中找到。在下面的小节中,对于DE2_70_demonstrations文件夹子目录中的每一个范例我们给出了它的工程名称。示范的安装按照以下说明将示范安装到你的电脑上:1.复制目录DE2_70_demonstrations到你选择的本地目录中,必须保证本地目录中不含空格,否则NiosⅡ软件将不会工作。6.1DE2-70出厂配置DE2-70开发板出厂时配有能够说明开发板基本特点的默认配置,安装时需要这个说明,其文件所在位置如下所示。示例的安装、文件位置及用法介绍·项目目录:DE2_70_Default·所用码流:DE2_70_Default.sof或DE2_70_Default.pof·DE2-70开发板通过USB电缆连接到USBBlaster端口上来供电。如果需要的话(就是说,如果DE2-70开发板的默认出厂配置没有存储在EPCS16中),将码流文件通过JTAG或AS编程模式下载到开发板上。·你现在应该可以看到7段数码管显示一定次序的字符,以及红绿发光二极管的闪烁。另外,LCD上显示WelcometotheAlteraDE2-70。·如果将VGA显示器连接到开发板的VGAD-SUB连接器上,VGA显示器会显示一定样式的颜色图案。·也可以连接有源扬声器到立体声音频输出插座。·将拨码开关SW17拨到上方位置时,通过音频输出端口你会听到1kHz嗡嗡的声音。而当SW17拨到下面时,可以将麦克风插入麦克风输入端口来听说话的声音,或者将合适的声源连接到线性输入端口来播放音频信号。此示例的Verilog源码在DE2_70_Default文件夹中,同时也包含了相应QuartusⅡ工程的一些必要文件。叫做DE2_70_Default.v的顶层Verilog文件可以用来作为其它工程的模板,因为它定义了CycloneⅡFPGA所有的用户可用端口。6.2QuartusⅡ9.1和NiosⅡEDS9.1用户用户使用最新的Quartus和Nios9.1版本软件来运行DE2-70开发板的使用NiosⅡ处理器的示例,必须用NiosⅡ9.1IDE来代替已经不支持的NiosⅡSoftwareBuildTools。图6.1给出了正确的NiosⅡ软件目录来运行DE2-70示例。6.3电视接收器示例这个示例使用DE2-70开发板上的VGA输出、音频编解码器和TV解码器(U11)来播放DVD播放器输出的视频和音频信号。该设计的方框图如图6.2所示,在电路中有两个主要的模块,分别叫做I2C_AV_Config和TV_to_VGA。TV_to_VGA模块包含了ITU-R656Decoder、SDRAMFrameBuffer、YUV422toYUV444、YcrCbtoRGB和VGAController。该图也显示了所用的TV解码器(ADV7180)和VGA数模转换芯片(ADV7123)。码流一旦下载到FPGA芯片当中,通过使用I2C协议与TV解码器芯片进行通信的I2C_AV_Config块,TV解码器芯片中寄存器的值就会被用来配置TV解码器。按照上电顺序,TV解码器芯片会不稳定一段时间;锁定检测器用来检测这种不稳定性。ITU-R656Decoder块从TV解码器发出的ITU-R656数据流中取出YcrCb4:2:2(YUV4:2:2)视频信号,同时,它也产生一个数据有效控制信号来指示数据输出的有效阶段。由于来自TV解码器的视频信号是交错的,因此我们需要对该数据信号进行反交错处理。我们采用SDRAMFrameBuffer和一个多路字段选择器(MUX)来实现该处理过程。在内部,VGA控制器产生数据请求和奇偶选择信号送到SDRAMFrameBuffer和MUX。YUV422toYUV444块将选取的YcrCb4:2:2(YUV4:2:2)视频数据转换成YcrCb4:4:4(YUV4:4:4)视频数据格式。最后,YcrCb_to_RGB块将YcrCb数据转换成RGB格式输出。VGA控制器块产生标准的VGA同步信号VGA_HS和VGA_VS来使VGA显示器进行显示。示例的安装、文件位置及用法介绍·项目目录:DE2_70_TV·所用码流:DE2_70_TV.sof或DE2_70_TV.pof·将DVD播放器的混合视频输出(黄色插头)连接到DE2-70开发板Video-IN1的RCA接口(莲花接口J8)上,DVD播放器必须提供如下配置:(1)NTSC输出(2)60Hz刷新速率(3)4:3纵横比(4)非逐行扫描视频·将DE2-70开发板的VGA输出端口通VGA显示器连接起来(LCD和CRT显示器都可以正常工作)·将DE2-70开发板的线性输入端口通DVD播放器的音频输出端连接起来,同时扬声器连接到线性输出端上。如果DVD播放器的音频输出端子是RCA形式,则需要DE2-70开发板提供的转接器来对迷你立体声插口进行转换,其插口型号与大多数计算机所提供的一致。·将码流下载到FPGA当中,按下DE2-70开发板上的KEY0来复位电路。本示例的安装如图6.3所示。6.4电视接收器画中画(PIP)示例DE2-70开发板具有两个电视解码器和RCA插座,允许用户使用2C70同时处理两路视频信号。这个示例将来自电视解码器的两路不同的视频信号进行复用,并在LCD/CRT显示器上采用画中画模式(PIP模式:一幅图像全屏显示,而另一幅图像则在一个小的子窗口中显示)进行显示。图6.4给出了这个示例的基本方框图。电路中有三个主要的方块,分别为Composite_to_VGA、PIP_Position_Controller和VGA_Multiplexer。方块Composite_to_VGA包含了6.3节中电视接收器示例所描述的所有功能块。方块Composite_to_VGA将电视解码器输出的视频信号作为输入并产生VGA接口信号作为输出。FPGA电路中的两个Composit_to_VGA块分别用于转换电视解码器1和电视解码器2的视频信号。在LCD/CRT显示器中采用画中画模式对两路视频信号进行显示,用于子窗口的Composite_to_VGA块的输出VGA数据速率必须两倍于用于主窗口的Composite_to_VGA输出数据的速率。另外,Composite_to_VGA块VGA接口信号的输出时序由决定子窗口静态位置的pip_position_controller块控制。最后,两路VGA接口信号通过VGA_multiplexer块进行复用发送至LCD/CRT显示器。示例的安装、文件位置及用法介绍·项目目录:DE2_70_TV_PIP·所用码流:DE2_70_TV_PIP.sof或DE2_70_TV_PIP.pof·将DVD播放器1和DVD播放器2的混合视频输出(黄色插头)分别连接到DE2-70开发板的Video-in1和Video-in2的RCA插座上(J8和J9)。两个DVD必须提供如下配置:(1)60Hz刷新速率(2)4:3纵横比(3)非逐行扫描视频·将DE2-70开发板的VGA输出和VGA显示器连接好。(LCD和CRT型的显示器都可以)·将DVD播放器的一个音频输出连接到DE2-70开发板的line-in端口上,将一个扬声器连接到line-out端口上。如果DVD播放器的音频输出插头是RCA型的,则需要DE2-70开发板提供的转接器来对迷你立体声插口进行转换,其插口型号与大多数计算机所提供的一致。·下载码流到FPGA中。·关于主窗口和子窗口视频源开关控制的更详细配置信息见表6.1。此示例的安装如图6.5所示。6.5USB画笔在许多多媒体产品中,USB是一种普遍的通信手段。DE2-70开发板为主机和设备应用程序提供了完全的USB解决方案。在这个示例中,我们通过使用USB鼠标作为输入工具来完成画笔应用程序。这个示例采用了飞利浦ISP1362芯片和NIOSⅡ处理器来完成USB鼠标的运动检测。我们还实现了一个带VGA控制器的视频帧缓冲器来完成实时的图像存储和显示。图6.6给出了电路的方框图,用户可以通过USB鼠标在VGA显示屏幕上画线。VGAController块和AlteraAvalon总线融为一体以至于能够被NiosⅡ处理器控制。程序一旦在NiosⅡ处理器运行,它就会检测DE2-70开发板上是否连接USB鼠标。一旦鼠标移动,NiosⅡ处理器将会在帧缓冲存储器中记录其运动轨迹。VGAController将会与帧缓冲器中存储的数据以默认的图像模式重合,并在VGA显示屏上显示出重叠的图像。示例的安装、文件位置及用法介绍项目目录:DE2_70_NIOS_HOST_MOUSE_VGA所用码流:DE2_70_NIOS_HOST_MOUSE_VGA.sofNiosⅡ工作区:DE2_70_NIOS_HOST_MOUSE_VGA\Software•将USB鼠标和DE2-70开发板的USB主连接器(A型)进行连接。•将开发板的VGA输出连接到VGA显示器上(LCD和CRT型的监视器都可以)。•下载码流到FPGA中。•运行NiosⅡ,选择DE2_70_NIOS_HOST_MOUSE_VGA\Software作为工作区,点击Run按钮。•你将可以观察到带有Alteralogo的蓝色背景显示在VGA显示屏幕上。•移动USB鼠标,观察屏幕上相应的指针运动轨迹。•点击鼠标左键将会在屏幕上画出白色的点或线,点击鼠标右键将会画出蓝色的点或线。此示例的安装如图6.7所示。6.6USB设备对于绝大多数USB应用和产品来说,USB从设备要多于USB主设备。在这个示例中,我们将展示DE2-70开发板是如何作为一个USB从设备连接到一个主机的。如图6.8的方框图所示,NiosⅡ处理器通过DE2-70开发板的飞利浦ISP1362芯片的主机端口来与主机通信。将DE2-70开发板和主机的USB口连好以后,NiosⅡ处理器需要运行一个软件程序来初始化飞利浦ISP1362芯片。一旦程序运行成功,主计算机将会在其USB从设备列表中识别出新设备并要求安装相关的驱动程序;该设备将会被识别为PhilipsPDIUSBD12SMARTEvaluationBoard。在驱动程序在主机上安装完成以后,下一步就是在主机上运行一个叫ISP1362DcUsb.exe的程序;这个程序负责与DE2-70进行通信。在ISP1362DcUsb程序中,点击该软件窗口面板的ADD按键使得主机发送一个特殊的USB数据包到DE2-70开发板;NiosⅡ处理器会接收该数据包且硬件计数器的值会跟着增加。计数器的值会在开发板的一个7段数码管上及绿色发光二极管上进行显示。如果用户点击软件窗口面板中的Clear按键,主机将发送一个不同的USB数据包到开发板上,该数据包将使NiosⅡ处理器对硬件计数器进行清零。示例的安装、文件位置及用法介绍•项目目录:DE2_70_NIOS_DEVICE_LED\HW•所用码流:DE2_70_NIOS_DEVICE_LED.sof•NiosⅡ工作区:DE2_70_NIOS_DEVICE_LED\HW\Software•BorlandBC++软件驱动器:DE2_70_NIOS_LED\SW•使用USB电缆(A型转B型)将DE2-70开发板的USB设备连接器接到主机上。•下载码流到FPGA中。•以DE2_70_NIOS_DEVICE_LED\HW\Software为工作区,运行NiosⅡIDE,点击Run。•新的USB硬件设备将会被检测出来,指定驱动器的位置为DE2_70_NIOS_DEVICE_LED\D12test.inf(PhilipsPDIUSBD12SMARTEvaluationBoard)。安装过程中忽略产生的任何警告信息。•主机会报告一个PhilipsPDIUSBD12SMARTEvaluationBoard已经安装成功。•在主机上执行软件:DE2_70_NIOS_DEVICE_LED\SW\ISP1362DcUsb.exe,然后,利用该软件通过点击ADD和Clear按键来进行实验。该示例的安装如图6.9所示。6.7卡拉OK机这个示例利用DE2-70开发板的麦克风输入端、线性输入端和线性输出端来建立一个卡拉OK机应用程序。WolfsonWM8731音频编解码器配置成主动模式,音频编解码器自动产生AD/DA连续位时钟信号和左/右通道时钟信号。如图6.10所示,I2C接口用来配置音频编解码器。用这种方式来设置采样率和编解码器的增益,线性输入端输入的数据和麦克风输入端的数据进行混合,结果发送到线性输出端上。对于这个示例来说,采样率设置为48kHz。按KEY0键可以通过I2C总线重新配置音频编解码器的增益,以器件提供的预先设定增益(音量级)的十分之一进行循环。示例的安装、文件位置及用法介绍•项目目录:DE2-70_i2sound•所用码流:DE2-70_i2sound.sof或DE2-70_i2sound.pof•连接麦克风到DE2-70开发板的麦克风输入端(粉色)。•连接音乐播放器如MP3播放器或电脑的音频输出端到DE2-70开发板的线性输入端(蓝色)。•连接耳机/扬声器到DE2-70的线性输出端上(绿色)。•下载码流到FPGA中。•你应该能够听见麦克风和音乐播放器混合以后的声音。•按KEY0键调整音量;音量从0到9之间循环。该示例的安装如图6.11所示。6.8以太网数据包的发送和接收在这个示例中,我们将展示如何使用DE2-70开发板的快速以太网控制器发送和接收以太网数据包。如图6.12所示,我们采用NiosⅡ处理器,通过DM9000A以太网PHY/MAC控制器来发送和接收以太网数据包。该示例可用来将一块开发板自己连成环路,也可以将两块DE2-70连在一起。在发送端,NiosⅡ处理器每0.5秒向DM9000A发送64个字节的数据包。接收完数据包后,Dm9000A给数据包附上一个四字节的校验和后并把它发送给以太网端口。在接收端,DM9000A检验每一个接收到的数据包,看数据包的目的地MAC地址是否和DE2-70开发板的MAC地址一致。如果接收到的数据包确实和MAC地址一致或是一个广播包,DM9000A将接收数据包并发送一个中断给NiosⅡ处理器,处理器就会在NiosⅡIDE控制窗口中显示数据包内容。示例的安装、文件位置及用法介绍•项目目录:DE2_70_NET•所用码流:DE2_70_NET.sof•iosⅡ工作区:DE2_70_NET\Software•在DE2-70的以太网连接器中插入CAT5环路电缆。•下载码流到FPGA中。•在工作区DE2_70_NET\Software中运行NiosⅡIDE。•点击Run按键。•现在你应该可以看到所接收到的数据包内容(64字节的发送数据包,68字节的接收数据包,因为接收数据包加入了多余的校验和字节)。该示例的安装如图6.13所示。6.9SD卡音乐播放器许多媒体/音频播放器商品都使用很大的外部存储设备,如SD卡或CF卡来存储音乐或视频文件。这些播放器还可能具有高质DAC设备来保证高质音频信号的产生。DE2-70开发板提供了硬件和软件上的支持用于读取SD卡以及专业的音频性能,使得利用DE2-70开发板设计高级的多媒体产品成为了可能。在这个示例中,我们将展示如何在DE2-70开发板上实现一个SD卡音乐播放器,音乐文件存储在SD卡中,开发板通过CD音质的音频DAC电路来播放音乐文件。我们使用NiosⅡ处理器来读取存储在SD卡中的音乐数据,并采用WolfsonWM8731音频编解码器来播放音乐。图6.14给出了该示例的硬件方框图。本系统需要开发板提供一个50MHz的时钟。锁相环电路提供100MHz的时钟给NIOSⅡ处理器和除了音频控制器之外的其它控制器。音频芯片由一个用户定义的SOPC元件——音频控制器来控制,这个音频控制器需要一个18.432MHz的输入时钟。在这个设计中,该时钟由锁相环来提供。音频控制器要求音频芯片工作在主模式,以
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉林艺术学院《数字出版》2021-2022学年第一学期期末试卷
- 吉林艺术学院《剪辑技术》2021-2022学年第一学期期末试卷
- 吉林艺术学院《当代艺术思潮》2021-2022学年第一学期期末试卷
- 吉林师范大学《中国共产党历史》2021-2022学年第一学期期末试卷
- 2024年大棚洞子承包协议书模板
- 婚纱店合伙开店协议书范文模板
- (基于系统思维的)2025届江西省新高考化学二轮复习策略 课件
- 吉林师范大学《教育统计与测量》2021-2022学年第一学期期末试卷
- 吉林师范大学《歌曲写作》2021-2022学年第一学期期末试卷
- 老年人自愿放弃社保协议书
- 新解读《JTG 5120-2021公路桥涵养护规范》
- 我们喜欢的动画片(课件)三年级上册综合实践活动教科版
- 2024年秋季学期新人教版七年级上册英语课件 Unit 4 My Favourite Subject(第4课时)SectionB 1a-1d
- 读书分享课件:《一句顶一万句》
- 2024年涉密人员考试试题库保密基本知识试题附答案(考试直接用)
- 2024年黑龙江哈尔滨市文化广电和旅游局“丁香人才周”(春季)事业单位引才招聘24人高频考题难、易错点模拟试题(共500题)附带答案详解
- 教案模板电子版
- 项目化学习在跨学科教学中的实施
- VSD负压吸引术应用及护理
- 2024年山东省青岛中德生态园(青岛国际经济合作区)管委会选聘52人历年(高频重点复习提升训练)共500题附带答案详解
- 2023下半年四川绵阳引进高层次和急需紧缺人才14716人笔试历年典型考题及考点剖析附答案详解
评论
0/150
提交评论