基于fpga的sopc技术

上传人:n**** 文档编号:90484687 上传时间:2019-06-12 格式:DOC 页数:12 大小:1.62MB
返回 下载 相关 举报
基于fpga的sopc技术_第1页
第1页 / 共12页
基于fpga的sopc技术_第2页
第2页 / 共12页
基于fpga的sopc技术_第3页
第3页 / 共12页
基于fpga的sopc技术_第4页
第4页 / 共12页
基于fpga的sopc技术_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《基于fpga的sopc技术》由会员分享,可在线阅读,更多相关《基于fpga的sopc技术(12页珍藏版)》请在金锄头文库上搜索。

1、基于基于 FPGA 的数字时钟设计的数字时钟设计 摘要:摘要:EDA 技术在电子系统设计领域越来越普及,本设计主要利用 VHDL 和 C 语言在 FPGA 实验板上设计一个电子数字钟,它的计时周期为 24 小时,显示满 刻度为 23 时 59 分 59 秒、 。总的程序由几个各具不同功能的单元模块程序拼接而 成,其中包括分频程序模块、时分秒计数模块、处理器及外设模块,并且使用 QuartusII 运用 VHDL 语言对分频和计数两个模块进行硬件电路设计和电路波 形仿真,运用 sopc 技术嵌入内核并创建了系统所需的外部设备 FLASH 和 SRAM 软件通过使用 NiosII 运用 C 语言进

2、行编程然后下载到硬件电路中,并在 FPGA 实验板上进行调试和验证。该设计采用自顶向下、混合输入方式(原理图 输入顶层文件连接和 VHDL 语言输入各模块程序设计)实现数字钟的设计、 下载和调试。 关键词:关键词:数字钟;FPGA;VHDL 语言;C 语言;SOPC 技术; 1 1、选题背景和研究内容、选题背景和研究内容 近年来,随着数字集成电路技术的发展,用以前传统的方法进行芯片或系统 设计已不能满足要求, 迫切需要提高设计效率。能大大降低设计难度的 VHDL 设 计方法正在被越来越广泛的采用。VHDL 即超高速集成电路硬件描述语言,诞生 于 1982 年。1987 年底, VHDL 被 I

3、EEE 和美国国防部确认为标准硬件描述语言。 此后 VHDL 在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬 件描述语言。1993 年 IEEE 对 VHDL 进行了修订,从更高的抽象层次和系统描述 能力上扩展 VHDL 的内容,公布了新版本的 VHDL,即 IEEE 标准的 1076-1993 版本。现在, VHDL 作为 IEEE 的工业标准硬件描述语言,已成为通用硬件描述语 言。 现在电子钟产品可谓百家争鸣,市场上到处可见一些功能齐全的设备,可 能基于单片机的比较多,用 FPGA 设计电子钟可能比较少。因为两个都可以实现 同样的功能,而 FPGA 芯片的价格远比单片机高。出

4、于利润,当然会选择开发成 本少的产品。本次设计的目的是为了检验所学的知识(VHDL 语言与 SOPC 技术) 同时结合实践巩固知识,由于初涉该领域,相关的知识可能不够全面,实践的 经验不够,所以本设计旨在能够实现数字钟的功能,对于各模块设计的优化和 性能等方面没有多加考虑。 2 2、SOPCSOPC 技术概述技术概述 SOPC(System On Programmable Chip)即可编程的片上系统,或者说是基于 大规模 FPGA 的单片系统。SOPC 的设计技术是现代计算机辅助设计技术、EDA 技 术和大规模集成电路技术高度发展的产物。SOPC 技术的目标就是试图将尽可能 大而完整的电子系

5、统,包括嵌入式处理器系统、接口系统、硬件协处理器或加 速系统、DSP 系统、数字通信系统、存储电路以及普通数字系统等,在单一 FPGA 中实现,使得所设计的电路系统在其规模、可靠性、体积、功耗、功能、 性能指标、上市周期、开发成本、产品维护及其硬件升级等多方面实现最优化。 SOPC 技术是一门全新的综合性电子设计技术,涉及面广,SOPC 在电子设计技术 上给出了一种以人的基本能力为依据的软硬件综合解决优化方案。 3 3、数字钟系统总体设计方案、数字钟系统总体设计方案 3.13.1 数字钟的构成数字钟的构成 该数字钟系统构成主要包括分频程序模块、时分秒计数模块、处理器及外 设模块三个模块,其总体

6、结构框图如图 1 所示 分频 数 字 钟 NIOS 50Hz1Hz 中断 时(个位) 分(十位) 时(十位) 分(个位) 秒(十位) 秒(个位) LED 显示 图 1 总体结构框图 3.23.2 数字钟的工作原理数字钟的工作原理 数字钟电路的基本结构由两个 60 进制计数器和一个 24 进制计数器组成, 分别对秒、分、小时进行计时,当计时到 23 时 59 分 59 秒时,再来一个计数脉 冲,则计数器清零,重新开始计时。秒计数器的计数时钟 CLK 为 1Hz 的标准信 号,可以由晶振产生的 50MHz 信号通过分频得到。当数字钟处于计时状态时, 秒计数器的进位输出信号作为分钟计数器的计数信号,

7、分钟计数器的进位输出 信号又作为小时计数器的计数信号,每一秒钟发出一个中断给 CPU,CPU 采用 NIOS,它响应中断,并读出小时、分、秒等信息。CPU 对读出的数据译码,使 之动态显示在数码管上。 4 4、单元模块电路设计、单元模块电路设计 4.14.1 分频模块电路设计与实现分频模块电路设计与实现 分频器是数字系统设计中的基本电路,根据不同设计的需要,我们会遇到 偶数分频、奇数分频、半整数分频等。通常由计数器或计数器的级联构成各种 形式的偶数分频及非等占空比的奇数分频,实现较为简单。本文设计的分频器 是利用VHDL硬件描述语言,通过Quartus开发平台,使用Altera公司的FPGA,

8、 设计了用50MHZ的时钟信号输入进行50000000分频得到1HZ的时钟信号,作为秒计 数器的个位提供时钟信号。其原理图如图2所示。 CLK RST FN FP inst 1Hz OUTPUT VCC 50Hz INPUT VCC Rst INPUT 图2 分频模块原理图 4.24.2 计数模块设计与实现计数模块设计与实现 秒计数器的计数时钟 CLK 为 1Hz 的标准信号,可以由晶振产生的 50MHz 信 号通过分频得到。当数字钟处于计时状态时,秒计数器的进位输出信号作为分 钟计数器的计数信号,分钟计数器的进位输出信号又作为小时计数器的计数信 号。其原理图如图 3 所示。 RST CLK

9、MIAO130 MIAO230 FEN130 FEN230 SHI130 SHI230 SSZ inst VCC 1Hz INPUT VCC Rst INPUT second130 OUTPUT second230 OUTPUT minute130 OUTPUT minute230 OUTPUT hour130 OUTPUT hour230 OUTPUT 图 3 计数模块原理图 4.34.3 处理器及外设模块设计和实现处理器及外设模块设计和实现 该模块 CPU 采用 NIOSII 处理器,程序存储采用 4M 的 Flash,数据存储采 用外部的 512k 的 SRAM,使用 Flash 来保存

10、 NIOSII 中运行的程序代码和 FPGA 的配置数据,处理器在复位后从 Flash 开始执行程序,使用 IDE Flash Programmer 进行编程,将程序下载到 Flash 中,一个 1 位的 I/O 口接受中断信 号,六个 4 位 I/O 口作为数据输入端口,六个 8 位 I/O 口作为数据输出端口, 外接六个 8 位 led 数码管,通过分频后的时钟信号每一秒钟给 CPU 一个中断信 号,CPU 响应中断,并通过 4 位 I/O 口读出小时、分、秒等信息,对读出的数 据进行译码,并通过 8 位 I/O 口使之动态显示在数码管上。原理图如图 4 所示。 clk reset_n i

11、n_port_to_the_INTURRPT in_port_to_the_PIO_IN130 in_port_to_the_PIO_IN230 in_port_to_the_PIO_IN330 in_port_to_the_PIO_IN430 in_port_to_the_PIO_IN530 in_port_to_the_PIO_IN630 out_port_from_the_PIO_OUT170 out_port_from_the_PIO_OUT270 out_port_from_the_PIO_OUT370 out_port_from_the_PIO_OUT470 out_port_fr

12、om_the_PIO_OUT570 out_port_from_the_PIO_OUT670 SRAM_ADDR_from_the_SRAM_16Bit_512K_inst170 SRAM_CE_N_from_the_SRAM_16Bit_512K_inst SRAM_LB_N_from_the_SRAM_16Bit_512K_inst SRAM_OE_N_from_the_SRAM_16Bit_512K_inst SRAM_UB_N_from_the_SRAM_16Bit_512K_inst SRAM_WE_N_from_the_SRAM_16Bit_512K_inst address_to

13、_the_flash210 read_n_to_the_flash select_n_to_the_flash w rite_n_to_the_flash SRAM_DQ_to_and_from_the_SRAM_16Bit_512K_inst150 data_to_and_from_the_flash70 cnz inst 图 4 处理器及外设模块原理图 系统总的原理图如图 5 所示 CLK RST FN FP inst RST CLK MIAO130 MIAO230 FEN130 FEN230 SHI130 SHI230 SSZ inst1 clk reset_n in_port_to_t

14、he_INTURRPT in_port_to_the_PIO_IN130 in_port_to_the_PIO_IN230 in_port_to_the_PIO_IN330 in_port_to_the_PIO_IN430 in_port_to_the_PIO_IN530 in_port_to_the_PIO_IN630 out_port_from_the_PIO_OUT170 out_port_from_the_PIO_OUT270 out_port_from_the_PIO_OUT370 out_port_from_the_PIO_OUT470 out_port_from_the_PIO_

15、OUT570 out_port_from_the_PIO_OUT670 SRAM_ADDR_from_the_SRAM_16Bit_512K_inst170 SRAM_CE_N_from_the_SRAM_16Bit_512K_inst SRAM_LB_N_from_the_SRAM_16Bit_512K_inst SRAM_OE_N_from_the_SRAM_16Bit_512K_inst SRAM_UB_N_from_the_SRAM_16Bit_512K_inst SRAM_WE_N_from_the_SRAM_16Bit_512K_inst address_to_the_flash2

16、10 read_n_to_the_flash select_n_to_the_flash write_n_to_the_flash SRAM_DQ_to_and_from_the_SRAM_16Bit_512K_inst150 data_to_and_from_the_flash70 cnz inst2 VCC clk INPUT VCC reset_n INPUT out_port_from_the_PIO_OUT170 OUTPUT out_port_from_the_PIO_OUT270 OUTPUT out_port_from_the_PIO_OUT370 OUTPUT out_port_from_the_PIO_OUT470 OUTPUT out_port_from_the_PIO_OUT570 OUTPUT out_port_from_t

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号