虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

时序逻辑

在计算机出现后的最初几十年里,计算机实质上是一个巨大的计算器,数字被录入,计算结果被输出。直到20世纪70年代,科学家们才意识到需要正确地验证这些计算结果。随着电脑变得更强大,软件更先进,多任务和变化的数据核查变得更加困难。
  • 可编辑程逻辑及IC开发领域的EDA工具介绍

    EDA (Electronic Design Automation)即“电子设计自动化”,是指以计算机为工作平台,以EDA软件为开发环境,以硬件描述语言为设计语言,以可编程器件PLD为实验载体(包括CPLD、FPGA、EPLD等),以集成电路芯片为目标器件的电子产品自动化设计过程。“工欲善其事,必先利其器”,因此,EDA工具在电子系统设计中所占的份量越来越高。下面就介绍一些目前较为流行的EDA工具软件。 PLD 及IC设计开发领域的EDA工具,一般至少要包含仿真器(Simulator)、综合器(Synthesizer)和配置器(Place and Routing, P&R)等几个特殊的软件包中的一个或多个,因此这一领域的EDA工具就不包括Protel、PSpice、Ewb等原理图和PCB板设计及电路仿真软件。目前流行的EDA工具软件有两种分类方法:一种是按公司类别进行分类,另一种是按功能进行划分。 若按公司类别分,大体可分两类:一类是EDA 专业软件公司,业内最著名的三家公司是Cadence、Synopsys和Mentor Graphics;另一类是PLD器件厂商为了销售其产品而开发的EDA工具,较著名的公司有Altera、Xilinx、lattice等。前者独立于半导体器件厂商,具有良好的标准化和兼容性,适合于学术研究单位使用,但系统复杂、难于掌握且价格昂贵;后者能针对自己器件的工艺特点作出优化设计,提高资源利用率,降低功耗,改善性能,比较适合产品开发单位使用。 若按功能分,大体可以分为以下三类。 (1) 集成的PLD/FPGA开发环境 由半导体公司提供,基本上可以完成从设计输入(原理图或HDL)→仿真→综合→布线→下载到器件等囊括所有PLD开发流程的所有工作。如Altera公司的MaxplusⅡ、QuartusⅡ,Xilinx公司的ISE,Lattice公司的 ispDesignExpert等。其优势是功能全集成化,可以加快动态调试,缩短开发周期;缺点是在综合和仿真环节与专业的软件相比,都不是非常优秀的。 (2) 综合类 这类软件的功能是对设计输入进行逻辑分析、综合和优化,将硬件描述语句(通常是系统级的行为描述语句)翻译成最基本的与或非门的连接关系(网表),导出给PLD/FPGA厂家的软件进行布局和布线。为了优化结果,在进行较复杂的设计时,基本上都使用这些专业的逻辑综合软件,而不采用厂家提供的集成PLD/FPGA开发工具。如Synplicity公司的Synplify、Synopsys公司的FPGAexpress、FPGA Compiler Ⅱ等。 (3) 仿真类 这类软件的功能是对设计进行模拟仿真,包括布局布线(P&R)前的“功能仿真”(也叫“前仿真”)和P&R后的包含了门延时、线延时等的“时序仿真”(也叫“后仿真”)。复杂一些的设计,一般需要使用这些专业的仿真软件。因为同样的设计输入,专业软件的仿真速度比集成环境的速度快得多。此类软件最著名的要算Model Technology公司的Modelsim,Cadence公司的NC-Verilog/NC-VHDL/NC-SIM等。 以上介绍了一些具代表性的EDA 工具软件。它们在性能上各有所长,有的综合优化能力突出,有的仿真模拟功能强,好在多数工具能相互兼容,具有互操作性。比如Altera公司的 QuartusII集成开发工具,就支持多种第三方的EDA软件,用户可以在QuartusII软件中通过设置直接调用Modelsim和 Synplify进行仿真和综合。 如果设计的硬件系统不是很大,对综合和仿真的要求不是很高,那么可以在一个集成的开发环境中完成整个设计流程。如果要进行复杂系统的设计,则常规的方法是多种EDA工具协调工作,集各家之所长来完成设计流程。

    标签: EDA 编辑 逻辑

    上传时间: 2013-10-11

    上传用户:1079836864

  • 通用阵列逻辑GAL实现基本门电路的设计

    通用阵列逻辑GAL实现基本门电路的设计 一、实验目的 1.了解GAL22V10的结构及其应用; 2.掌握GAL器件的设计原则和一般格式; 3.学会使用VHDL语言进行可编程逻辑器件的逻辑设计; 4.掌握通用阵列逻辑GAL的编程、下载、验证功能的全部过程。 二、实验原理 1. 通用阵列逻辑GAL22V10 通用阵列逻辑GAL是由可编程的与阵列、固定(不可编程)的或阵列和输出逻辑宏单元(OLMC)三部分构成。GAL芯片必须借助GAL的开发软件和硬件,对其编程写入后,才能使GAL芯片具有预期的逻辑功能。GAL22V10有10个I/O口、12个输入口、10个寄存器单元,最高频率为超过100MHz。 ispGAL22V10器件就是把流行的GAL22V10与ISP技术结合起来,在功能和结构上与GAL22V10完全相同,并沿用了GAL22V10器件的标准28脚PLCC封装。ispGAl22V10的传输时延低于7.5ns,系统速度高达100MHz以上,因而非常适用于高速图形处理和高速总线管理。由于它每个输出单元平均能够容纳12个乘积项,最多的单元可达16个乘积项,因而更为适用大型状态机、状态控制及数据处理、通讯工程、测量仪器等领域。ispGAL22V10的功能框图及引脚图分别见图1-1和1-2所示。 另外,采用ispGAL22V10来实现诸如地址译码器之类的基本逻辑功能是非常容易的。为实现在系统编程,每片ispGAL22V10需要有四个在系统编程引脚,它们是串行数据输入(SDI),方式选择(MODE)、串行输出(SDO)和串行时钟(SCLK)。这四个ISP控制信号巧妙地利用28脚PLCC封装GAL22V10的四个空脚,从而使得两种器件的引脚相互兼容。在系统编程电源为+5V,无需外接编程高压。每片ispGAL22V10可以保证一万次在系统编程。 ispGAL22V10的内部结构图如图1-3所示。 2.编译、下载源文件 用VHDL语言编写的源程序,是不能直接对芯片编程下载的,必须经过计算机软件对其进行编译,综合等最终形成PLD器件的熔断丝文件(通常叫做JEDEC文件,简称为JED文件)。通过相应的软件及编程电缆再将JED数据文件写入到GAL芯片,这样GAL芯片就具有用户所需要的逻辑功能。  3.工具软件ispLEVER简介 ispLEVER 是Lattice 公司新推出的一套EDA软件。设计输入可采用原理图、硬件描述语言、混合输入三种方式。能对所设计的数字电子系统进行功能仿真和时序仿真。编译器是此软件的核心,能进行逻辑优化,将逻辑映射到器件中去,自动完成布局与布线并生成编程所需要的熔丝图文件。软件中的Constraints Editor工具允许经由一个图形用户接口选择I/O设置和引脚分配。软件包含Synolicity公司的“Synplify”综合工具和Lattice的ispVM器件编程工具,ispLEVER软件提供给开发者一个简单而有力的工具。

    标签: GAL 阵列 逻辑 门电路

    上传时间: 2013-11-17

    上传用户:看到了没有

  • 用GAL配合ISA总线模拟I2C总线时序实现对FI1256M

    FI1256MK2是被广泛应用的电视信号前端处理器,可使用I2C总线对其进行编程控制。当用在计算机扩展板中时,可由计算机总线通过硬件电路模拟I2C总线的时序。文章给出了用可编程逻辑器件GAL配合ISA总线模拟I2C时序来对RI1256MK2进行编程控制的方法。

    标签: 1256M 1256 GAL ISA

    上传时间: 2013-11-22

    上传用户:gundan

  • 用GAL配合ISA总线模拟I~2C总线时序实现对FI1256

    FI1256MK2是被广泛应用的电视信号前端处理器,可使用I2C总线对其进行编程控制.当用在计算机扩展板中时,可由计算机总线通过硬件电路模拟I2C总线的时序.文章给出了用可编程逻辑器件GAL配合ISA总线模拟I2C时序来对FI1256MK2进行编程控制的方法.

    标签: 1256 GAL ISA FI

    上传时间: 2013-11-08

    上传用户:南国时代

  • 基于Verilog-HDL的硬件电路的实现 9.1 简单的可编程单脉冲发生器   9.1.1 由系统功能描述时序关系   9.1.2 流程图的设计   9.1.3 系统功能描述   

    基于Verilog-HDL的硬件电路的实现 9.1 简单的可编程单脉冲发生器   9.1.1 由系统功能描述时序关系   9.1.2 流程图的设计   9.1.3 系统功能描述   9.1.4 逻辑框图   9.1.5 延时模块的详细描述及仿真   9.1.6 功能模块Verilog-HDL描述的模块化方法   9.1.7 输入检测模块的详细描述及仿真   9.1.8 计数模块的详细描述   9.1.9 可编程单脉冲发生器的系统仿真   9.1.10 可编程单脉冲发生器的硬件实现   9.1.11 关于电路设计中常用的几个有关名词

    标签: Verilog-HDL 9.1 功能描述

    上传时间: 2015-09-16

    上传用户:chfanjiang

  • 四位计数器 计数器是数字系统中用得较多的基本逻辑器件。它不仅能记录输入时钟脉冲的个数

    四位计数器 计数器是数字系统中用得较多的基本逻辑器件。它不仅能记录输入时钟脉冲的个数,还可以实现分频、定时、产生节拍脉冲和脉冲序列等。例如,计算机中的时序发生器、分频器、指令计数器等都要使用计数器。

    标签: 计数器 数字系统 脉冲 逻辑器件

    上传时间: 2013-12-22

    上传用户:maizezhen

  • 练习用VHDL设计逻辑

    练习用VHDL设计逻辑,用VHDL设计一个3-8译码器,对其进行时序仿真

    标签: VHDL 逻辑

    上传时间: 2014-01-15

    上传用户:1966640071

  • 目 录 第一章 VHDL文本输入设计方法 1.1 编辑输入并存盘VHDL原文件 1.2 将当前设计设定为工程 1.3 选择VHDL文本编译版本号和排错 1.4 时序仿真 1.5 硬件测试 1.

    目 录 第一章 VHDL文本输入设计方法 1.1 编辑输入并存盘VHDL原文件 1.2 将当前设计设定为工程 1.3 选择VHDL文本编译版本号和排错 1.4 时序仿真 1.5 硬件测试 1.6 部分实验 第二章 全国大学生电子设计竞赛赛题练习 2.1 等精度频率计设计 2.2 数字移相正弦信号发生器设计 2.3 测相仪设计 2.4 逻辑分析相仪设计 2.5 存储示波器设计

    标签: VHDL 1.1 1.2 1.3

    上传时间: 2014-12-02

    上传用户:diets

  • (1)课程设计的题目。(2)设计的目的及设计原理。 (3)根据设计要求给出模型机的逻辑框图。 (4)设计指令系统

    (1)课程设计的题目。(2)设计的目的及设计原理。 (3)根据设计要求给出模型机的逻辑框图。 (4)设计指令系统,并分析指令格式。 (5)设计微程序及其实现的方法(包括微指令格式的设计,后续微地址的产生方法以及微程序入口地址的形成)。 (6)模型机当中时序的设计安排。(7)设计指令执行流程。 (8)给出编制的源程序,写出程序的指令代码及微程序。 (9)说明在使用软件HKCPT的联机方式与脱机方式的实现过程(包括编制程序中每指条令的时序分析,累加器A和有关寄存器、存储器的数据变化以及数据流程)。

    标签: 设计原理 模型 指令系统 逻辑

    上传时间: 2017-08-30

    上传用户:TRIFCT

  • FPGA读写SD卡读取BMP图片通过LCD显示例程实验 Verilog逻辑源码Quartus工程文件

    FPGA读写SD卡读取BMP图片通过LCD显示例程实验 Verilog逻辑源码Quartus工程文件+文档说明,FPGA型号Cyclone4E系列中的EP4CE6F17C8,Quartus版本17.1。1 实验简介在前面的实验中我们练习了 SD 卡读写,VGA 视频显示等例程,本实验将 SD 卡里的 BMP 图片读出,写入到外部存储器,再通过 VGA、LCD 等显示。本实验如果通过液晶屏显示,需要有液晶屏模块。2 实验原理在前面的实验中我们在 VGA、LCD 上显示的是彩条,是 FPGA 内部产生的数据,本实验将彩条替换为 SD 内的 BMP 图片数据,但是 SD 卡读取速度远远不能满足显示速度的要求,只能先写入外部高速 RAM,再读出后给视频时序模块显示module top( input                       clk, input                       rst_n, input                       key1, output [5:0]                seg_sel, output [7:0]                seg_data, output                      vga_out_hs,        //vga horizontal synchronization output                      vga_out_vs,        //vga vertical synchronization output[4:0]                 vga_out_r,         //vga red output[5:0]                 vga_out_g,         //vga green output[4:0]                 vga_out_b,         //vga blue output                      sd_ncs,            //SD card chip select (SPI mode) output                      sd_dclk,           //SD card clock output                      sd_mosi,           //SD card controller data output input                       sd_miso,           //SD card controller data input output                      sdram_clk,         //sdram clock output                      sdram_cke,         //sdram clock enable output                      sdram_cs_n,        //sdram chip select output                      sdram_we_n,        //sdram write enable output                      sdram_cas_n,       //sdram column address strobe output                      sdram_ras_n,       //sdram row address strobe output[1:0]                 sdram_dqm,         //sdram data enable output[1:0]                 sdram_ba,          //sdram bank address output[12:0]                sdram_addr,        //sdram address inout[15:0]                 sdram_dq           //sdram data);parameter MEM_DATA_BITS         = 16  ;            //external memory user interface data widthparameter ADDR_BITS             = 24  

    标签: fpga

    上传时间: 2021-10-27

    上传用户: