加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
    • on chip clock的由來(lái)
    • 基本OCC結(jié)構(gòu)
    • Systemverilog code of the OCC
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

淺談 dft 之 OCC(on chip clock)

2022/02/21
1.5萬(wàn)
閱讀需 7 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

on chip clock的由來(lái)

在工藝節(jié)點(diǎn)在130nm以下的時(shí)候,很多情形下的物理缺陷都是由于延時(shí)來(lái)引起的。因此在對(duì)這種類型的chip做dft的時(shí)候,需要建立一個(gè)新的故障模型,業(yè)內(nèi)稱之為延時(shí)故障模型(time delay model)。解決的方法就是at-speed test,所謂的at-speed test就是讓芯片工作在自己高倍時(shí)鐘頻率上,這個(gè)頻率往往是要高過(guò)ATE的時(shí)鐘的。這樣對(duì)掃描模型的建立就提出了新的要求。

大家工作中接觸的一般的dft時(shí)鐘是不是頻率不高。

片上時(shí)鐘控制器 (On-chip Clock Controllers ,OCC) ,也稱為掃描時(shí)鐘控制器 (Scan Clock Controllers,SCC)。OCC 是插入 SOC 的邏輯,用于在 ATE(自動(dòng)測(cè)試設(shè)備)上進(jìn)行回片測(cè)試期間控制時(shí)鐘。由于?at-speed test在capture mode下需要兩個(gè)時(shí)鐘脈沖,其頻率續(xù)等于func mode下的最高時(shí)鐘頻率,因此在沒(méi)有 OCC 的情況下,我們需要通過(guò) I/O??pad提供這些at-speed?clock脈沖。但是這些I/O ?pad它們?cè)诳梢灾С值淖畲箢l率方面存在限制;另一方面,OCC 使用內(nèi)部 PLL clock來(lái)生成時(shí)鐘脈沖進(jìn)行測(cè)試。在?stuck-at test期間,OCC 確保在capture階段僅生成一個(gè)時(shí)鐘脈沖。同樣,在at-speed test期間,OCC 確保在capture階段生成兩個(gè)時(shí)鐘脈沖,其頻率等于功能時(shí)鐘的頻率。

因此,在scan做的比較好的design中所有的test clock都通過(guò) OCC 進(jìn)行通路控制, OCC 控制scan mode下的時(shí)鐘操作(在stuck-at test和at-speed test中)并繞過(guò)func mode下的功能時(shí)鐘。

基本OCC結(jié)構(gòu)

本文我們將討論一個(gè)非?;镜?OCC 設(shè)計(jì),其唯一目的是演示它是如何工作的。與此處討論的 OCC 相比,行業(yè)標(biāo)準(zhǔn) OCC 更先進(jìn),更能抵御時(shí)鐘毛刺。

圖1??基本片上時(shí)鐘控制器結(jié)構(gòu)示意圖(具有 n 位移位寄存器

當(dāng)電路處于func mode(Test Mode = 0)時(shí),OCC 會(huì)傳播功能時(shí)鐘(參見(jiàn)圖 1)。但在shift階段(Shift Enable = 1),scan clock在 OCC 的輸出端propagate。在capture階段(Shift Enable = 0),移位寄存器開(kāi)始shift“1”并啟用Clock Gate,以根據(jù)test type來(lái)允許單脈沖或雙脈沖。OCC 在stuck-at test(At-speed Mode = 0)中生成一個(gè)時(shí)鐘脈沖,在at-speed test(At-speed Mode?= 1)中生成兩個(gè)時(shí)鐘脈沖。

此 OCC(具有 5 位移位寄存器)在at-speed test的行為如圖 2 所示。兩個(gè)捕獲脈沖出現(xiàn)在功能時(shí)鐘的 5 個(gè)正沿之后(因?yàn)槲覀兪褂玫氖?5 位移位寄存器) .

注意:一旦 Shift Enable 置為低電平,n 位移位寄存器根據(jù)功能時(shí)鐘的上升沿?cái)?shù)量決定延遲,之后功能時(shí)鐘在 OCC 的輸出端propagate。

圖 2??圖 1 中所示 OCC 結(jié)構(gòu)的仿真波形(具有 5 位移位寄存器)

Systemverilog code of the OCC

module occ
#(
parameter SHIFT_REG_BITS = 5
)
(
input logic test_mode,
input logic atspeed_mode,
input logic shift_en,
input logic scan_clk,
input logic func_clk,
output logic occ_out_clk
)
logic cg_en;
logic cg_out_clk;
logic sync_flop;
logic [SHIFT_REG_BITS-1:0]shift_reg;

always @(func_clk or cg_en) begin
if (cg_en == 1)
cg_out_clk = func_clk;
else
cg_out_clk = 0;
end

always_ff @(posedge scan_clk) begin
sync_flop <= ~shift_en;
end

always_ff @(posedge func_clk) begin
shift_reg <= shift_reg << 1;
shift_reg[0] <= sync_flop;
end

assign occ_out_clk = test_mode ? (shift_en ? scan_clk : cg_out_clk) : func_clk;

assign cg_en = atspeed_mode ? (~shift_reg[SHIFT_REG_BITS-1] & shift_reg[SHIFT_REG_BITS-3]) : (~shift_reg[SHIFT_REG_BITS-1] & shift_reg[SHIFT_REG_BITS-2]);

endmodule

END

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

前華為海思工程師;與非網(wǎng)2022年度影響力創(chuàng)作者;IC技術(shù)圈成員。

微信公眾號(hào)