📄 sort4.vhd
字号:
d20_num<=d11_num;
d21_num<=L1_num;
d22_num<=d12_num;
d23_num<=d13_num;
elsif L1<d13 then
d20<=d11;
d21<=d12;
d22<=L1;
d23<=d13;
d20_col<=d11_col;
d21_col<=d12_col;
d22_col<=L1_col;
d23_col<=d13_col;
d20_num<=d11_num;
d21_num<=d12_num;
d22_num<=L1_num;
d23_num<=d13_num;
elsif L1=d13 and L1_col<d13_col then
d20<=d11;
d21<=d12;
d22<=L1;
d23<=d13;
d20_col<=d11_col;
d21_col<=d12_col;
d22_col<=L1_col;
d23_col<=d13_col;
d20_num<=d11_num;
d21_num<=d12_num;
d22_num<=L1_num;
d23_num<=d13_num;
else
d20<=d11;
d21<=d12;
d22<=d13;
d23<=L1;
d20_col<=d11_col;
d21_col<=d12_col;
d22_col<=d13_col;
d23_col<=L1_col;
d20_num<=d11_num;
d21_num<=d12_num;
d22_num<=d13_num;
d23_num<=L1_num;
end if;
end case;
end if;
end process;
process(clk)
begin
if clk'event and clk='1' then
case set_temp2 is
when '1'=>L2<=d22;
L2_col<=d22_col;
L2_num<=d22_num;
when '0'=>
if L2<d20 then
L2<=L2;
L2_col<=L2_col;
L2_num<=L2_num;
elsif L2=d20 and L2_col<d20_col then
L2<=L2;
L2_col<=L2_col;
L2_num<=L2_num;
else
L2<=d20;
L2_col<=d20_col;
L2_num<=d20_num;
end if;
end case;
end if;
end process;
process(clk)
begin
if clk'event and clk='1' then
case set_temp2 is
when '1'=> d30<=d20;
d31<=d21;
d32<="1111";
d33<=d23;
d30_col<=d20_col;
d31_col<=d21_col;
d32_col<="000";
d33_col<=d23_col;
d30_num<=d20_num;
d31_num<=d21_num;
d32_num<="00";
d33_num<=d23_num;
when '0'=>if L2<d20 then
d30<=d20;
d31<=d21;
d32<=d22;
d33<=d23;
d30_col<=d20_col;
d31_col<=d21_col;
d32_col<=d22_col;
d33_col<=d23_col;
d30_num<=d20_num;
d31_num<=d21_num;
d32_num<=d22_num;
d33_num<=d23_num;
elsif L2=d20 and L2_col<d20_col then
d30<=d20;
d31<=d21;
d32<=d22;
d33<=d23;
d30_col<=d20_col;
d31_col<=d21_col;
d32_col<=d22_col;
d33_col<=d23_col;
d30_num<=d20_num;
d31_num<=d21_num;
d32_num<=d22_num;
d33_num<=d23_num;
elsif L2<d21 then
d30<=L2;
d31<=d21;
d32<=d22;
d33<=d23;
d30_col<=L2_col;
d31_col<=d21_col;
d32_col<=d22_col;
d33_col<=d23_col;
d30_num<=L2_num;
d31_num<=d21_num;
d32_num<=d22_num;
d33_num<=d23_num;
elsif L2=d21 and L2_col<d21_col then
d30<=L2;
d31<=d21;
d32<=d22;
d33<=d23;
d30_col<=L2_col;
d31_col<=d21_col;
d32_col<=d22_col;
d33_col<=d23_col;
d30_num<=L2_num;
d31_num<=d21_num;
d32_num<=d22_num;
d33_num<=d23_num;
elsif L2<d22 then
d30<=d21;
d31<=L2;
d32<=d22;
d33<=d23;
d30_col<=d21_col;
d31_col<=L2_col;
d32_col<=d22_col;
d33_col<=d23_col;
d30_num<=d21_num;
d31_num<=L2_num;
d32_num<=d22_num;
d33_num<=d23_num;
elsif L2=d22 and L2_col<d22_col then
d30<=d21;
d31<=L2;
d32<=d22;
d33<=d23;
d30_col<=d21_col;
d31_col<=L2_col;
d32_col<=d22_col;
d33_col<=d23_col;
d30_num<=d21_num;
d31_num<=L2_num;
d32_num<=d22_num;
d33_num<=d23_num;
elsif L2<d23 then
d30<=d21;
d31<=d22;
d32<=L2;
d33<=d23;
d30_col<=d21_col;
d31_col<=d22_col;
d32_col<=L2_col;
d33_col<=d23_col;
d30_num<=d21_num;
d31_num<=d22_num;
d32_num<=L2_num;
d33_num<=d23_num;
elsif L2=d23 and L2_col<d23_col then
d30<=d21;
d31<=d22;
d32<=L2;
d33<=d23;
d30_col<=d21_col;
d31_col<=d22_col;
d32_col<=L2_col;
d33_col<=d23_col;
d30_num<=d21_num;
d31_num<=d22_num;
d32_num<=L2_num;
d33_num<=d23_num;
else
d30<=d21;
d31<=d22;
d32<=d23;
d33<=L2;
d30_col<=d21_col;
d31_col<=d22_col;
d32_col<=d23_col;
d33_col<=L2_col;
d30_num<=d21_num;
d31_num<=d22_num;
d32_num<=d23_num;
d33_num<=L2_num;
end if;
end case;
end if;
end process;
process(clk)
begin
if clk'event and clk='1' then
case set_temp3 is
when '1'=>L3<=d33;
L3_col<=d33_col;
L3_num<=d33_num;
when '0'=>
if L3<d30 then
L3<=L3;
L3_col<=L3_col;
L3_num<=L3_num;
elsif L3=d30 and L3_col<d30_col then
L3<=L3;
L3_col<=L3_col;
L3_num<=L3_num;
else
L3<=d30;
L3_col<=d30_col;
L3_num<=d30_num;
end if;
end case;
end if;
end process;
process(clk)
begin
if clk'event and clk='1' then
L0_temp0<=L0;
L0_temp1<=L0_temp0;
L0_temp2<=L0_temp1;
L1_temp0<=L1;
L1_temp1<=L1_temp0;
L2_temp0<=L2;
L0_coltp0<=L0_col;
L0_coltp1<=L0_coltp0;
L0_coltp2<=L0_coltp1;
L1_coltp0<=L1_col;
L1_coltp1<=L1_coltp0;
L2_coltp0<=L2_col;
L0_numtp0<=L0_num;
L0_numtp1<=L0_numtp0;
L0_numtp2<=L0_numtp1;
L1_numtp0<=L1_num;
L1_numtp1<=L1_numtp0;
L2_numtp0<=L2_num;
end if;
end process;
--process(clk)
--begin
-- if clk'event and clk='1' then
-- smin0<=L0_temp2;
-- smin1<=L1_temp1;
-- smin2<=L2_temp0;
-- smin3<=L3;
-- smin0_col<=L0_coltp2;
-- smin1_col<=L1_coltp1;
-- smin2_col<=L2_coltp0;
-- smin3_col<=L3_col;
-- smin0_num<=L0_numtp2;
-- smin1_num<=L1_numtp1;
-- smin2_num<=L2_numtp0;
-- smin3_num<=L3_num;
-- end if;
--end process;
process(clk)
begin
if clk'event and clk='1' then
case set_temp3 is
when '1'=>Ls0<=L0_temp2;
Ls1<=L1_temp1;
Ls2<=L2_temp0;
Ls3<=L3;
Ls0_col<=L0_coltp2;
Ls1_col<=L1_coltp1;
Ls2_col<=L2_coltp0;
Ls3_col<=L3_col;
Ls0_num<=L0_numtp2;
Ls1_num<=L1_numtp1;
Ls2_num<=L2_numtp0;
Ls3_num<=L3_num;
when others=>null;
end case;
end if;
end process;
end rtl;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -