新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 錯誤使用派生時鐘對邏輯時序的影響

錯誤使用派生時鐘對邏輯時序的影響

作者: 時間:2013-09-10 來源:網(wǎng)絡(luò) 收藏

項目代碼編譯后打印如下信息:

  Info: Clock “CLK48M” has Internal fmax of 67.47 MHz between source register “GLUE_LGC:glue|MCLK” and destination register “img_lgc:img|N2DSP” (period= 14.822 ns)

  信號由MCLK到N2DSP這條通道限定了時針的最高速度只能到67.47MHz。

  查看相關(guān)代碼中存在如下代碼段:

  always @( posedge CLK48M )

  begin

  CLKDIV 《= CLKDIV + 1; //clock divider

  end

  always @(posedge CLKDIV[5])

  begin

  MCLKB3 《= MCLK_EXT;

  MCLKB2 《= MCLKB3;

  MCLKB 《= MCLKB2;

  MCLK 《= MCLKB | MCLKB2 | MCLKB3;

  End

  該代碼段是對MCLK_EXT做一個簡單的防抖處理,相當(dāng)于使用CLK48M衍生的一個時鐘CLKDIV[5]。

  MCLK在其它模塊中又使用CLK48M系統(tǒng)時鐘做了一次鎖存,于是相當(dāng)于在兩個CLK48M時鐘之間要完成CLKDIV[5]的轉(zhuǎn)換,再用CLKDIV[5]的上升沿去觸發(fā)MCLK的轉(zhuǎn)換,再輸出到目的寄存器。此過程占用時間較長,而CLKDIV[5]所耗的時間顯然是多余的。

  修改代碼后如下:

  always @( posedge CLK48M )

  begin

  CLKDIV 《= CLKDIV + 1; //clock divider

  if (CLKDIV == 6‘b100000)


上一頁 1 2 下一頁

關(guān)鍵詞: 派生時鐘 邏輯時序

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉