这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » FPGA » 使用Xilinx Webpack4.2 ISE实现CPLD 和FPGA设计

共1条 1/1 1 跳转至

使用Xilinx Webpack4.2 ISE实现CPLD 和FPGA设计

菜鸟
2007-08-03 13:33:44     打赏
摘 要 可编程逻辑器件cpld和fpga以及xilinx webpack 4.2 ISE 的介绍;用xilinx webpack 4.2 ISE 设计七段译码器的显示.
关键词 ASIC  Xinlinx Webpack4.2 ISE  七段译码器   

一、 可编程ASIC(Application Specific Integrated Circuits)与EDA工具的简介
    目前ASIC已经被广泛的应用于高性能的微处理器、数字信号处理器、单片处理器。ASIC直译为“专用集成电路”,它是面向专门用途的电路。它是根据用户的特定要求,厂家提供全定制和半定制的集成电路。而可编程逻辑器件是ASIC的一个重要的分支。用户只要对它用EDA工具编程,就能实现自己的设计。用户可以反复编程、反复修改,这样很方便、灵活的实现自己的设计。可编程逻辑器件是ASIC主要分为:复杂可编程逻辑器件CPLD(Complex Programmable Logic Device)和现场可编程门阵列FPGA(Field Programmable Gate Array)。CPLD在工艺上采用EPROM、FLASH EPROM和E2PROM技术。因而CPLD在掉电的情况下能够保持用户设计的信息。而FPGA主要采用COMOS SRAM 工艺制造。它和CPLD别在于,用户必须把设计好的代码存储在和FPGA相连的存储器中(一般为串行EPROM),系统在上电时FPGA读入代码并配置系统。掉电时FPGA内的信息消失。现在可编程ASIC 向着高密度、大规模、低电压、低功耗、内嵌微处理器内核方向发展。从而实现了集成复杂功能于片上系统SOC(System-on-Chip)能力。
    现在较为流行的EDA工具为Altera的MaxplusII、QuartusII,Xilinx的Foundation、Xilinx ISE,Lattice的IspExpert等。Xilinx WebPack4.2 ISE(XWP4.2ISE)是Xilinx公司向用户提供的网络版免费软件。它支持Vhdl、Verilog HDL、ABEL 语言,EDIF (or XNF)网表,电路原理图输入。并包含ModleSim仿真软件,它能实现功能仿真、时序仿真。通过Impact 软件下载编程,它支持的通讯接口为:并行口、Mutilinx串行口、Mutilinx USB口。
    XWP4.2ISE目前所支持的Xilinx的产品为:
XC9500 (5V CPLDs)
XC9500XL (3.3V CPLDs)
XC9500XV (2.5V CPLDs)
XCR3000XL (CoolRunner XPLA3 3.3V zero-standby CPLDs)
XC2C00 (CoolRunner-II 1.8V zero-standby CPLDs)
XC2S00 (Spartan-II FPGAs)
XC2S00E (Spartan-IIE FPGAs)
XCV00E (Virtex-E FPGAs up to XCV300E)
XC2V00 (Virtex-II FPGAs up to XC2V250)
    XWP4.2ISE包含丰富的模版和宏,用户设计、调试非常方便。并提供下载电路的原理图、所以对于我们一些初学者和做简单设计的开发者,Xilinx公司的网络版软件为我们提供了良好的开发环境。

二、七段译码器的实例设计
    在此用Xc2s100 FPGA器件,XWP4.2 ISE来设计七段译码显示。该设计采用 bottom upto top设计方法由三部分组成,其中包括顶层原理图模块dsp_7.sch、计数器模块counter.vhd、七段译码模块leddcd.vhd。
    系统工作原理为4位计数器在clk的作用下开始计数,并输出给七段译码器显示如图(1)、(2)所示。为了使人能够看清楚LED显示,clk输入时钟频率要在每分钟几次左右。
    设计流程为,首先创建一个工程design1,选择器件为span2 系列xc2s15-5cs144,选择xst vhdl 输入。然后加入新文件,选择vhdl moudle ,命名为leddcd,按照wizard 选择输入输出端口,添入代码,然后综合、编译。然后另建一个工程design2,模仿design1的步骤,区别是源文件是counter.vhd,综合、编译无误后,添加源文件的命令菜单,选择添加leddcd.vhd的copy。然后用鼠标分别点中两个文件,选择工程窗口底部的创建原理图符号。然后选择加入新的源文件dsp_7.sch,选择原理图输入。在这里使用ECS (Engineering Schematic Capture)工具,用户可以用库中的符号、或者用户自己创建的符号画出自己的原理图设计,ECS能够把原理图转换成HDL (Hardware Description Language),以便于后续综合、仿真。由于我们生成了两个原理图符号,在ECS中我们会发现这两个文件。选择添加符号,添加端口属性、连接导线然后检查错误。然后选择存盘。这时我们发现在工程导航主窗口dsp_7.sch变为顶层文件。最后综合、仿真、下载。
     关于功能仿真、时序仿真、顶层原理图及vhdl 代码如下图所示。
  
                       

     

      
   现在cpld和fpga被广泛用于通信、数据采集接口领域,它不仅能够完成复杂的逻辑接口,也能够完成一些复杂算法的实现。电子工程师设计电路时更注重系统的简洁化设计、系统的灵活性设计,cpld和fpga正因为具有在系统编程、测试的功能,在一些接口设计上,它具有很好的优势。一些厂家在cpld和fpga上内嵌入32位处理器内核,并且支持C、C++支持。这使得我们更加容易、快速的实现我们的设计。本文仅起到抛砖引玉的作用,如果想提高水平,请多看一些设计的例子,以从中获得启发。当然具体的实践是最好的提高水平的方法。

    附系统设计源代码,IEEE库略
 
--七段译码器]                                             
entity leddcd is
    Port ( d : in std_logic_vector(3 downto 0);
           s : out std_logic_vector(7 downto 0));          
end leddcd;
architecture Behavioral of leddcd is
begin
s<=    00111111when d=0000else    --3fh
   00000110when d=0001else    --06h
       01011011when d=0010else    --5bh
   01001111when d=0011else    --4fh
   01100110when d=0100else    --66h
   01101101when d=0101else    --6dh
   01111101when d=0110else    --7dh
   00000111when d=0111else    --07h
   01111111when d=1000else    --7fh
   01100111when d=1001else    --67h
   01110111when d=1010else    --77h
   01111100when d=1011else    --7ch
   00111001when d=1100else    --39h
   01011110when d=1101else    --5eh
   01111001when d=1110else    --79h
   01110001when d=1111else    --71h
   00111001  ;                 --3fh
  end Behavioral;
 --4位计数器
entity counter is
Port (   clk : in std_logic;
    rst : in std_logic;
     count : out std_logic_vector(3 downto   0));
end counter;
architecture Behavioral of counter is
signal cnt: std_logic_vector(3 downto 0);
begin
  process(clk,rst) 
  begin ,
    if rst=1 then
    cnt<=0000;
    elsif clkevent and clk=0 then
     cnt<=cnt+1;
  end if;
  end process;
  count<=cnt(3 downto 0);
end Behavioral;

参考文献
1 《xilinx ISE tutorial》手册, http://www。Xilinx。com
2 徐志军,徐光辉。cpld/fpga的开发与应用。电子工业出版社。2002.1
3 Sefan Sjoholm,Lennart Lindh 著,边计年,薛宏熙译。清华大学出版社。2000.8
作者简介:李泓汐,男,大连海事大学,自动化与电气工程学院,电力电子专业2000级硕士研究生。
蔡悦,女,大连理工大学,计算力学专业,博士,讲师。




关键词: 使用     Xilinx     Webpack4.2     实现         

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]