我還沒有看到任何地方展示了這個例子,直到現在我還沒有需要它。我可以在VHDL中使用-select-when語句嵌套嗎?
我有2個控制信號,我需要爲它們做一個嵌套的-select-when語句。我可以很容易地將事情與case語句嵌套在一起,但最近我意識到我需要在流程之外使用這些代碼,因爲它與時間緊密相關。下面是代碼我目前擁有:
case OpcodeIn is =>
when "000000" =>
case FunctIn is =>
when "00000" =>
...
when "00001" ==>
...
end case;
when "000001" =>
...
end case;
而且,我不能只串連,如:
controlSig <= OpcodeIn & FunctIn;
,然後使用:
with controlSig select output <=
...
因爲載體作用只是取決於某些有效OpcodeIn的值。因此,只有在出現如下通配符時才能正常工作:
"0010" when "000001***********";
謝謝。好吧,我很高興知道,我可以使用連字符作爲不關心case語句的內容,但我需要在with-select-when語句中使用連字符,因爲這是爲了避免需要進程!那麼它會在裏面起作用嗎? – krb686
這是一個組合過程嗎?選擇分配只能用於組合過程。無論哪種方式,您都應該使用VHDL-2008進行試驗,並告訴我們它是否有效。 – Russell
它應該是組合的,但我搞砸了,並順序。它是MIPS處理器的控制單元。 – krb686