walkerinsky

    1. 其实更好的方法是将IO BANK的供给电压改为可调,更方便IO的多用途变化
    2. Quartus II的用法 2/2726 FPGA/CPLD 2012-01-02
      看fmax的大小
    3. 第一个问题: 外部输入的异步信号用本地时钟可靠同步, 常见工程处理方法有1 输入的信号比较慢,本地时钟至少能采样到一个有效变化,那么使用两个寄存器同步输入就可以了。2 输入的信号比较快,本地时钟不能采样到一个有效变化,但是输入信号的变化频率大于本地时钟,将这个输入的信号做为寄存器A的时钟输入,然后使用本地时钟进行寄存器B,C同步,再将寄存器C的输出给寄存器A作为复位信号。3使用FIFO设计 第二个问题:同步FSM 是指同步有限状态机,通俗讲,就是状态机的每个状态都有使用时钟同步到REGISTER。 第三个问题:综合指令确保FSM比如 :full case /parallele case 第四个问题:延迟时间接近或超过一个时钟周期的大组合逻辑必须分层,这个分层的话,一般EDA工具可以实现,就是加上RETIMING:综合指令。它不同于PIPELINE,它是把组合逻辑分散在不同的寄存器路径上。
    4. 对于无法确认的输入变化,我们是无法避免冒险与竞争。而且连TIMING分析也无法进行。我们所要考虑到的冒险与竞争,必须是我们能预测到了。
    5. 如果端口没有指定类型, 编译器默认类型是由这个端口在模块里面的功能类型定义的。一般是WIRE,如果是REG型,编译器会报错,要求这个端口有类型定义
    6. VGA 5/4150 FPGA/CPLD 2011-06-15
      VGA显示256色用DAC的话,可以获取比较好的图像质量。深入玩转FPGA 里面有一个VGA的256色显示 但是开发平台的硬件原理图 SF-EP1C 没有用DAC,是因为它使用电阻分压来输出VGA上的RGB,而且有可能只有8色或者64色,具体情况看分压的电阻网络。同时希望楼主自己搞明白256色需要多少bit,我们平时显示器上的显示色差又是多少色度。
    7. 那么这两种写法又有啥区别呢 9/3750 FPGA/CPLD 2011-04-22
      reg[15:0] data  表示定义为宽度是16位寄存器data; reg data[15:0]  表示定义为宽度是1的寄存器数组,数组深度为16. reg [15:0]   data[15:0]  表示定义为宽度是16的寄存器数组,数组深度为16.reg [15:0]   data[15:0]这样的写法,经常是为了声明一个RAM的行为。 [ 本帖最后由 walkerinsky 于 2011-4-22 15:13 编辑 ]
    8. ISE9.2的DCM问题 6/5525 FPGA/CPLD 2011-04-21
      有ISE 了,还上来问这个问题!ISE上带这个语言的模本的,先给你一个自己看看,顺便自己找找这个代码怎么找。GOOGLE一下 Library UNISIM; use UNISIM.vcomponents.all; --      -- DCM_SP: Digital Clock Manager Circuit    --         Spartan-3E/3A    -- Xilinx HDL Language Template, version 10.1    DCM_SP_inst : DCM_SP    generic map (       CLKDV_DIVIDE => 2.0, --  Divide by: 1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0,5.5,6.0,6.5                            --     7.0,7.5,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0 or 16.0       CLKFX_DIVIDE => 1,   --  Can be any interger from 1 to 32       CLKFX_MULTIPLY => 4, --  Can be any integer from 1 to 32       CLKIN_DIVIDE_BY_2 => FALSE, --  TRUE/FALSE to enable CLKIN divide by two feature       CLKIN_PERIOD => 0.0, --  Specify period of input clock       CLKOUT_PHASE_SHIFT => "NONE", --  Specify phase shift of "NONE", "FIXED" or "VARIABLE"       CLK_FEEDBACK => "1X",         --  Specify clock feedback of "NONE", "1X" or "2X"       DESKEW_ADJUST => "SYSTEM_SYNCHRONOUS", -- "SOURCE_SYNCHRONOUS", "SYSTEM_SYNCHRONOUS" or                                              --     an integer from 0 to 15       DFS_FREQUENCY_MODE => "LOW",     -- "HIGH" or "LOW" frequency mode for                                        -- frequency synthesis       DLL_FREQUENCY_MODE => "LOW",     -- "HIGH" or "LOW" frequency mode for DLL       DUTY_CYCLE_CORRECTION => TRUE, --  Duty cycle correction, TRUE or FALSE       FACTORY_JF => X"C080",          --  FACTORY JF Values       PHASE_SHIFT => 0,        --  Amount of fixed phase shift from -255 to 255       STARTUP_WAIT => FALSE) --  Delay configuration DONE until DCM_SP LOCK, TRUE/FALSE    port map (       CLK0 => CLK0,     -- 0 degree DCM CLK ouptput       CLK180 => CLK180, -- 180 degree DCM CLK output       CLK270 => CLK270, -- 270 degree DCM CLK output       CLK2X => CLK2X,   -- 2X DCM CLK output       CLK2X180 => CLK2X180, -- 2X, 180 degree DCM CLK out       CLK90 => CLK90,   -- 90 degree DCM CLK output       CLKDV => CLKDV,   -- Divided DCM CLK out (CLKDV_DIVIDE)       CLKFX => CLKFX,   -- DCM CLK synthesis out (M/D)       CLKFX180 => CLKFX180, -- 180 degree CLK synthesis out       LOCKED => LOCKED, -- DCM LOCK status output       PSDONE => PSDONE, -- Dynamic phase adjust done output       STATUS => STATUS, -- 8-bit DCM status bits output       CLKFB => CLKFB,   -- DCM clock feedback       CLKIN => CLKIN,   -- Clock input (from IBUFG, BUFG or DCM)       PSCLK => PSCLK,   -- Dynamic phase adjust clock input       PSEN => PSEN,     -- Dynamic phase adjust enable input       PSINCDEC => PSINCDEC, -- Dynamic phase adjust increment/decrement       RST => RST        -- DCM asynchronous reset input    );    -- End of DCM_SP_inst instantiation
    9. 夏老师书中的一个语句疑惑 3/3100 FPGA/CPLD 2011-04-12
      直接按照字面的意思去理解:就是在RESET的上升沿后的碰到的第一个 FETCH 上升沿,进行ctl_cycle操作。这个一般是用来进行行为级的描述,不是RTL的,用于仿真和模型的建立。这样的语句描述方式在做仿真验证是非常有用的。
    10. FPGA 时序约束 9/6495 FPGA/CPLD 2011-04-11
      不是在约束里把最小的条件填进去,而且不要为了写约束而造约束。 系统会你在PLL设置的时钟情况来分析你的时序是否满足。所以一般不填写。 推荐你用XILINX的TIMING CONSTRAIT工具看看是怎么回事情吧,或者看看QUARTUS的手册。 选定的芯片的参数是它能满足的极限TIMING情况,根本不需要设置,而你要设置的是你的系统的TIMING情况。你把两个混淆了!建议先看看source synchronization和system synchronization的区别,以进一步了解约束是为什么。
    11. FPGA 时序约束 9/6495 FPGA/CPLD 2011-04-09
      PGA芯片资料定义的,给的是时序约束的最快的值,也就是极限的情况了。在时序约束中的建立时间,保持时间,脚到脚的延时时间这些参数是要根据自己的设计要求定义的。
    12. AD9852作为时钟源 5/4941 FPGA/CPLD 2011-04-06
      数字设计,很多时候时钟都是方波的!方波是引入了大量的高频,但是对你的设计有影响吗?
    13. sopc系统时钟 2/3415 FPGA/CPLD 2011-04-06
      看手册吧!注意nois2 的指令周期和timer 的分频情况。
    14. 求问一个xilinx 时钟使用的问题 5/3603 FPGA/CPLD 2011-04-06
      虽然楼主的代码风格不好,但是initial好象还是支持的。我觉得有个重要问题,楼主自己没有给出,就是my_clk时候频率多少,进行10000或者500分频,分到1k 20k的时钟,你觉得自己能看到LED的灯的情况和实际出来的时钟现象是一致的吗?
    15. 后仿真出现的问题,求高人 9/3955 FPGA/CPLD 2011-04-06
      带问号的文件,好象是你POST-ROUTE后的网点文件,但是路径没有找对。对于使用ISE内置仿真器,没有怎么使用过。推荐对后仿真使用 modelsim,只需要vo和sdf文件就可以了。
    16. AD9852作为时钟源 5/4941 FPGA/CPLD 2011-04-06
      AD9852里有一个比较器,可以把DA的输出接到这。COMPARATOR OUTPUT HARACTERISTICS                     Logic 1 Voltage, High-Z Load   Full  VI  3.1       3.1       V   Logic 0 Voltage, High-Z Load  Full  VI      0.16       0.16   V 这样比较器的输出就可以直接当时钟使用了。
    17. 一个输出管脚总是没有数据? 6/3394 FPGA/CPLD 2011-03-29
      已经试了!仿真器会报错的。assign readout
    18. 综合器Synplify告诉你的信息是:不能给变量index找到合适的匹配的对应物或者结构。就是说你的这个代码属于不可综合的。就是那个动态的移位是不可综合的,自己想想,可否用其他方式实现,比如查表。
    19. 一个输出管脚总是没有数据? 6/3394 FPGA/CPLD 2011-03-29
      assign readout
    20. 测得的是20MHz,但已经不是方波了,是个类似正弦曲线的波,我觉得跟你CLOCK 的LOAD有关系,后面的电路 估计是一个等效20~30M带宽的滤波器,当然也有可能是你的FPGA引起的。用PLL的话,不推荐使用assign clk_out=clk输出,推荐用40M时钟对DFF进行01翻转输出,或者用DDR形式。

最近访客

< 1/1 >

统计信息

已有100人来访过

  • 芯积分:--
  • 好友:--
  • 主题:--
  • 回复:42

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言