VHDL로 FPGA 프로젝트를 진행 중입니다.VHDL : 설정과 관련하여 다른 구성 요소를 적절하게 클로킹
16 비트 시프트 레지스터가 채워질 때마다 FIFO에 복사해야합니다 (예 : 16 개의 새로운 데이터 비트가 시프트 레지스터에 입력 된 후 새로 형성된 16 비트 워드를 가져 와서 a fifo)
내 질문은 FIFO의 클록 라인을 설정하기 전에 FIFO의 입력에서 데이터를 설정해야합니까? 이것은 실제로 일반적인 VHDL 질문이며 FIFO에만 국한되지는 않습니다.
기본적으로 동일한 작업으로 데이터를 설정하고 시계를 전환 할 수 있습니까? 아니면 하나의 클럭 에지에서 데이터를 설정하고 다음에 FIFO 시계를 전환하려면 기본 상태 시스템이 필요합니까? 예를 들어
:
fifo_d_in(7 downto 0) <= shift_register;
fifo_clk <= '1';
또는
if(state = one) then
fifo_d_in(7 downto 0) <= shift_register;
state <= two;
elsif(state = two) then
fifo_clk <= '1';
end if;
내 직감 내가 입력 레지스터의 설정 & 보류 요구 사항을 충족하기 위해, 데이터를 먼저 설정한다는 것을 알려줍니다.
감사합니다.
FIFO에 클럭 인 에이블 (CLKEN) 유형의 입력이 있습니까? –
@AustinPhillips 네, 맞습니다. 동일한 클럭 에지에서 데이터를 설정하는 것과 동일한 시간을 주장 할 수 있습니까? – Marcus10110