du520xi

FPGA知识百问

0
阅读(16115)

下面分享"FPGA知识百问.pdf",详见附件

可编程逻辑器件应用设计技巧百问

1.么是.scf?
答:SCF 文件是 MAXPLUSII 的仿真文件, 可以在 MP2 中新建.
2 .用 Altera_Cpld 作了一个 186 (主CPU )控制sdram 的控制接口, 发现问题:要使得 sdram
读写正确, 必须把 186(主 CPU) 的clk 送给 sdram, 而不能把 clk 经 cpld 的延时送给sdram.
两者相差仅仅 4ns. 而时序通过逻辑分析仪测试没有问题. 此程序在 xilinx 器件上没有问
题. 这是怎么回事?
答:建议将所有控制和时钟信号都从 PLD 输出, 因为 SDRAM 对时钟偏移(clock skew)很敏
感, 而 Altera 的器件 PLL 允许对时钟频率和相位都进行完全控制. 因此, 对于所有使用
SDRAM 的设计, Altera 的器件PLL 必须生成 SDRAM 时钟信号.
要利用 SDRAM 作为数据或程序存储地址来完成设计, 是采用 MegaWizard 还是 Plug-In
Manager 来将一个 PLL 在采用 Quartus II 软件的设计中的顶层示例?可以选择创建一个新的
megafuntion 变量, 然后在Plug-In manager 中创建ALTCLKLOCK(I/P 菜单)变量. 可以将PLL
设置成多个, 或是将输入划分开来, 以适应设计需求. 一旦软件生成 PLL, 将其在设计中示
例, 并使用 PLL 的“Clock ”输出以驱动CPU 时钟输入和输出 IP 引脚.
3 .在 max7000 系列中, 只允许有两个输出使能信号, 可在设计中却存在三个, 每次编译时
出现“device need too many [3/2] output enable signal ”. 如果不更换器件(使用的是
max7064lc68 ). 如何解决这个问题?
答:Each of these unique output enables may control a large number of tri-stated signals. For
example, you may have 16 bidirectional I/O pins. Each of these pins require an output enable
signal. If you group the signals into a 16-bit bus, you can use one output enable to control all
of the signals instead of an individual output enable for each signal. (参考译文:这两个独特的
输出使能中每个都可能控制大量三相信号. 例如, 可能有 16 个双向 I/O 引脚. 每个引脚需要
一个输出使能信号. 如果将这些信号一起分组到一个 16 位总线, 就可以使用一个输出使能
控制所有信号, 而不用每个信号一个输出使能. )
4 .关于 vhdl 的问题:process(a, b, c) begin… end process; 如果 a、b 、c 同时改变, 该进程是
否同时执行三次?
答:PROCESS STATEMENTS 中的执行跟逻辑有关系, 假如是同步逻辑, 则在每次时钟的
触发沿根据 A, B, C 的条件来执行一次;假如是异步逻辑, 则根据判断 A 、B 、C 的条件来
执行. 一般我们都推荐使用同步逻辑设计
5 .在设计最初, 由于没有将时钟信号定义在全局时钟引脚上, 导致MAXPLUS II 在时间分
析时提示错误:(时钟偏斜加上信号延迟时间超过输入信号建立时间). 全局时钟引脚的
时钟信号到各个触发器的延时最小, 有没有可能通过编译软件设置, 将普通 I/O 脚上的
Baidu
map