[轉錄][請益] 數位IC 面試題目 這樣解?
※ [本文轉錄自 Tech_Job 看板 #1DTbN1xY ]
作者: flymango (等待一個人陪伴) 看板: Tech_Job
標題: [請益] 數位IC 面試題目 這樣解?
時間: Wed Mar 9 00:13:50 2011
題目:
module A module B 分別有不同的clock domain 100MHz、33MHz
module A產生一個period 長的pulse 給B 試問
module B要怎麼收到 進而產生一個period長的pulse?
會有setup time violation嗎?
我的解:
A有個output "Q1" 在產生pulse的同時 0->1
B有個input D 接收 "Q1" 產生output 信號"Q2"
module B 裡含下列程式:
input D;
output Q2;
reg cnt;
always@(posedge clk_33M)
begin
if(D & (cnt <= 1'b1))
begin
Q2 <= ~Q2;
cnt <= cnt + 1'b1;
end
else
Q2 <= Q2;
end
假設初始化皆為0
程式沒有初始化 是因為主管說寫關鍵的就好
對於setup time的問題
當時沒有想辦法解決
只是跟主管說會有setup time問題
回家邊看客運的電視邊想 有沒有解決的辦法呢?
我要請教的是
因為module A的output Q1會一直為"1"
所以 如果我在module B裡 第二次知道(Q1==1)時
再產生Q2信號 是不是就不會有setup time violation的情況發生呢??
不知道這樣的想法有沒有錯?
還請各位先進不吝指教一下
感謝看完
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.177.149
推
03/09 00:18,
03/09 00:18
→
03/09 00:21,
03/09 00:21
→
03/09 00:26,
03/09 00:26
→
03/09 00:27,
03/09 00:27
→
03/09 00:27,
03/09 00:27
→
03/09 00:28,
03/09 00:28
※ 編輯: flymango 來自: 61.224.177.149 (03/09 00:29)
→
03/09 00:29,
03/09 00:29
→
03/09 00:29,
03/09 00:29
→
03/09 00:29,
03/09 00:29
→
03/09 00:30,
03/09 00:30
→
03/09 00:30,
03/09 00:30
→
03/09 00:31,
03/09 00:31
→
03/09 00:58,
03/09 00:58
→
03/09 01:01,
03/09 01:01
→
03/09 01:02,
03/09 01:02
→
03/09 01:03,
03/09 01:03
→
03/09 01:04,
03/09 01:04
→
03/09 01:06,
03/09 01:06
→
03/09 01:09,
03/09 01:09
→
03/09 01:09,
03/09 01:09
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.63.14
推
03/09 01:55, , 1F
03/09 01:55, 1F
→
08/13 19:09, , 2F
08/13 19:09, 2F
→
09/17 23:03, , 3F
09/17 23:03, 3F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):