Microsemi 웹 사이트 (Actel HDL Code)의 문서를 살펴본 결과 플립 플롭 (동기식, 비동기식 등)의 구현이 몇 가지 발견되었습니다. 모든 경우에 필자는 플립형을 모델링했습니다 -blocks 명령문을 포함하는 -flops.플립 플롭 모델링의 올바른 방법
순차 논리를 모델링하기 위해 항상 비 차단을 사용했기 때문에 이러한 구현이 올바른지 알고 싶습니다. 내가 누락 된 것이 있습니까? 아니면 일반적으로 순차 회로가 아닌 플립 플롭 만 모델링하는 것입니까?
// Rising Edge Flip-Flop with Asynchronous Reset
module dff_async_rst (data, clk, reset, q);
input data, clk, reset;
output q;
reg q;
always @(posedge clk or negedge reset)
if (~reset)
q = 1'b0;
else
q = data;
endmodule
//Rising Edge Flip-Flop with Synchronous Reset
module dff_sync_rst (data, clk, reset, q);
input data, clk, reset;
output q;
reg q;
always @ (posedge clk)
if (~reset)
q = 1'b0;
else
q = data;
endmodule
참고 : 항상에서 사용되는 차단 할당
대부분의 합성 툴 순차 논리에 공통적입니다. 이 대답은 당신에게 더 자세한 통찰력을 줄 것이다 : http://stackoverflow.com/a/4774450/1383356 – Ari