当前位置: 主页 > 期刊大全 > 科技期刊 >

基于FLEX10K 的数字显示程序设计

作者:余丽红 龙诺春 林春景 日期:2014-07-19 09:40 来源:未知
摘要:本文利用达盛EDA 实验箱,
在FLEX10K 芯片的基础上完成了
数字显示程序的模块设计、VHDL
语言的设计描述及硬件实现。数
字显示程序设计可以作为《EDA 技
术与应用》课程的实验模块来巩
固学生对动态扫描的原理的理解,
并进一步掌握VHDL 语言的编程方
法。
【关键词】FLEX10K 芯片 数字显示程序 编程
方法
EDA 的全称是Electronic Design Automation,
中文含义是电子设计自动化。EDA 技术是一门
多学科融合的电子产品设计自动化的新技术。
掌握EDA 技术是培养高素质、高技能电子产
品设计人才的需要,是现代集成电路和电子整
机系统设计及科技创新和产业发展的需要。
EDA 技术以计算机为工作平台,以可编程逻
辑器件PLD 的软件及实验开发系统为设计工
具,以硬件描述语言为系统的设计语言,用软
件方式进行元件建模和系统仿真,最终形成集
成电子系统或ASIC 芯片。目前生产 PLD 的
厂商有Xilinx,Altera,Lattice 和Actel 等公
司。常见的PLD 产品有Xilinx 公司的 XC 系
列,Lattice 公司的 ispLSI 系列和Altera 公司
的MAX 和 FLEX 系列等。本 文是以Altera
公司的 FLEX10K 器件为载体,以Altera 公
司提供的强大而易于使用的软件开发工具
MAX+PLUS Ⅱ为设计工具来实现数字显示的
程序设计,最后借助北京达盛EDA 实验箱来
完成硬件实现。
1 FLEX10K芯片的结构特性
Altera 公司的 FLEX10K 系列器件采用
CMOS-SRAM 工艺制造,是高密度阵列嵌入
式可编程逻辑器件系列。
1.1 内部结构
FLEX10K 器件主要由嵌入阵列、逻辑阵
列、快速通道(FASTTRACK) 以及IO 单元构
成。嵌入阵列由EAB 构成,实现存储和专用
逻辑功能,完成RAM,ROM, 双口RAM 或者
FIFO 功能。逻辑阵列由LAB 构成。8 个逻辑
单元(LE)和一个局部连接构成一个LAB。
EAB 和LAB 由跨越整个器件的行、列快速互
联通道连接。行列通道的两端是IO 单元。嵌
入阵列块和逻辑阵列块结合提供了嵌入式门阵
列的高性能和高密度,设计者可以在某个器件
上实现一个完整的系统。
1.2 主要特点
(1) 高密度嵌入式可编程逻辑器件, 提
供了在单个器件中的系统集成。
(2) 3.3V 或5.0V 的工作模式,低功耗。
(3) 遵守全 PCI 总路线, 内 带 JTAG(
联合测试行动组) 边界扫描电路; 通过外部
EPROM、集成控制器或 JTAG 接口实现在电
路可重构等。
(4) I/O 引脚都有INPUT/OUTPUT 寄
存器。
(5) 具有低延时时钟和内部三态总线,
能提供复杂逻辑设计所需的功能。
(6) 具有在系统(ISP)可配置特性。
(7) MAX+PLUS Ⅱ开发系统提供软件
支持,自动布局布线,可在PC 机或工作站上
运行。
2 数字显示程序的设计
2.1 程序模块设计
数字显示设计要同时显示0-7 共8 个数字,
则需要用到8 个数码管。每个时钟周期内只扫
描一个数码管,只能显示一位数据,显示的数
据值由段码来控制,同时由位码来选择数码管,
对各数码管进行动态扫描。利用人眼的视觉暂
留现象,只要时钟扫描>100HZ,则可以观测
到所有的数码管是同时显示的。达盛EDA 实
验箱可以提供20MHZ 的原始外部时钟输入,
为了得到动态扫描的时钟脉冲,同时看到8 个
数字,程序需要如下模块:计数分频模块、动
态扫描模块、确定数码管与对应数字模块以及
译码显示模块。
2.2 程序的VHDL语言实现
(1)实体:本设计需要四个端口:时钟
输入、复位控制、段码输出以及位码输出。 7
段数码管加上小数点一共就是8 位。段码的数
据类型是8 位标准逻辑矢量。本设计是利用达
盛EDA 实验箱来完成硬件实现。该实验箱共
有8 个数码管,其中四个是低电平亮,另外四
个是高电平亮。所以位码是四位的标准逻辑矢
量。实体名取为display。实体的VHDL 语言
描述如下:
Entity display is
Port ( clk: in std_logic;
rst: in std_logic;
dataout : out std_logic_vector( 7 downto 0 );
sel : out std_logic_vector( 3 downto 0 ) ) ;
End display;
(2)结构体:该设计共有4 个模块,分
别用P1、P2、P3 和P4 四个进程来描述。
P1 代表计数分频模块,该模块利用一个
异步复位的16 位计数器CS 将20MHZ 的原始
时钟分频为305HZ 的动态扫描时钟。P2 进程
实现对8 个数码管的轮流扫描,四个数码管是
高电平亮,四个数码管是低电平亮。P3 进程
用于确定数码管与对应数字的关系。EDA 实
验箱上的8 个数码管从左到右依次显示0 到7。
P4 进程将数码管上要显示的数字转换成8 段
码。P2、P3 和P4 三个进程利用选择信号赋值
语句来实现,进程对应的VHDL程序描述如下:
p2: process (cs( 15 downto 13) )
Begin
with cs (15 downto 13) select
en<="1110" when "000";
"1101" When "001";
"1011" When "010";
"0111" When "011";
"0001" When "100";
"0010" When "101";
"0100" When "110";
"1000" When "111";
End process p2;
p3: process (en)
Begin
With en select
data<= "0001" When "1110";
"0010" When "1101";
"0100" When "1011";
"0000" When "0111";
"0110" When "0001" ;
"0101" When "0010" ;
"0011" When "0100";
"0111" When "1000" ;
End process p3;
p4: process (data)
Begin
With data select
dataout_t <="11111100" When "0000";"01100000" When "0001";
"11011010" When "0010";
"11110010" When "0011" ;
"01100110" When "0100";
"10110110" When "0101";
"10111110" When "0110";
"11100000" When "0111";
End process p4;
3 数字显示程序的硬件实现
3.1 器件选择
本设计选用Altera 公司提供的MAX+PLUS Ⅱ
为设计工具。在文本编辑器中完成用VHDL 描
述语言编写的数字显示源程序后,点击Assign
\ Device 菜单, 在弹出的DEVICE 对话框中
的DEVICE FAMILY 下拉列表的器件系列
DEVICE FAMILY 中选择FLEX10K 系列。
达盛EDA 实验箱采用的是FLEX10K 系列的
EPF10K10LC84-4。
3.2 程序的硬件实现
选择好器件,编译正确无误后,根据编
译后的报告文件(后缀rpt)来进行管脚连接,
接好管脚后就可以进行器件的编程下载,硬件
实现。本设计的硬件实现如图1。
4 总结
笔者所在单位实验室选用的达盛
EDA 实验箱采用的是FLEX10K 系列中的
EPF10K10LC84-4。本设计是基于达盛EDA
实验箱来完成的。图1 是在实验箱上的运行结
果。本设计可以作为《EDA 技术与应用》课
程的实验模块来巩固学生对动态扫描的原理的
理解,并进一步掌握VHDL 语言的编程方法。
参考文献
[1] 刘江海.EDA 技术[M]. 华中科技大学出版
社,2013.
[2] 聂小燕, 鲁才. 数字电路EDA 设计与应用
[M]. 人民邮电出版社,2010.
[3] 骆震波.. 基于FLEX10K10 的EDA 实验
箱硬件设计[J]. 科技情报开发与经
济,2007:232-234.
作者简介
余丽红(1985 -),女,湖北咸宁人,硕士,
广东白云学院电子信息工程系教师,教学和科
研方向为信号处理。
作者单位
广东白云学院电气与信息工程学院 广东省广
州市 510450

 


  博深论文网( www.bosslunwen.com ),是一个专门从事期刊推广、论文发表论文投稿指导的机构。本站提供整体论文发表解决方案:省级论文/国家级论文/核心论文/CN论文。
  论文投稿:bosslunwen@126.com
  咨询电话:18602588568
  在线咨询:
论文发表-论文投稿-发表论文86099078

版权所有:博深论文网 苏ICP备06011074号
论文投稿咨询电话:18602588568,在线咨询:论文发表-论文投稿-发表论文86099078,论文投稿:bosslunwen@126.com
本站点提供如下服务:论文发表 发表论文 论文投稿 职称论文发表 学术论文发表
山东省济南市城南路213号 本网站隶属于-济南富东化工有限公司