環境:vivado2018.2
如下主要部分代碼裏的always塊報錯:
[Synth 8-434] mixed level sensitive and edge triggered event controls are not supported for synthesis
always@(posedge clk or rst) begin
...代碼內容
end
stackoverflow上的解釋大致爲:
Mixed sensitive list of levels and edges is not synthesizable, because a flip-flop cannot be edge-tiggered and level-triggered at the same time. Check this link: Synthesis of always
blocks
因爲一個觸發器不能同時是邊緣觸發和電平觸發的,因此不可被綜合
所以最好統一是邊沿觸發,或者直接去掉rst信號
always@(posedge clk or posedge rst) begin
...代碼內容
end