一水寒

【再说FPGA】Verilog生成语句以及Xilinx原语的使用示例

最近做QDRIISRAM控制器,要用到xilinx的原语IDDR,我的数据输入输出是18位的,又用到Generate将一位输入输出IDDR扩成18位,以前没用过generate,也不太熟悉,现在已熟悉其应用场合及其用法,不多解释,看如下代码实例,一目便了然:moduleSRAM_IDDR_RD_

【技术分享】双向口的仿真

moduleinout_sim(din,clk,ctrl,dout,dinout);input[3:0]din;inputclk;inputctrl;outputreg[3:0]dout;inout[3:0]dinout;reg[3:0]din_reg;assigndinout=ctrl?din_reg:4'hz;always@(posedgeclk)if(ctrl)din_reg<=din;elsedout<=dinout;endmodule`timescale1ns/1nsmod

My note of how to use QAR file

HowtoUseQuartusIIDesignExamplesThesedesignexamplescontainlinkstoadownloadableexecutablefile(.exe),zippedfile(.zip),orQuartusIIprojectarchived(.qar)file.Thesefilescontainallofthenecessarydesignandprojectfilestousetheexample.Tousetheexamples,performthe

PLL复位问题

这些天在学习sdram控制器代码的编写,现在常规的读写功能都已经很好地实现了,接下来开始DDR2了。在sdram前仿都是很顺利的,后仿的时候出了一些问题费了一点劲才弄明白,其中有一个是PLL复位的问题。现在把SDRAM里面的PLL单独拿出来对它进行一次测试。首先利用MegaWizar

FPGA笔记

这是前几天学习中记在word上的笔记,放到这里来吧,第一篇博客。。1、提高工作频率的本质就是要减少寄存器到寄存器的时延,最有效的方法就是避免出现大的组合逻辑,也就是要尽量去满足四输入的条件,减少LUT级联的数量。我们可以通过加约束、流水、切割状态的方法