📄 myexpand.tdf
字号:
SUBDESIGN myexpand
(
incount[4..0] : INPUT;
INPUTCLK[2..0] : INPUT;
NIGHT_MODE : INPUT; % IF NIGHT_MODE THEN DISPLAY YELLOW LIGHTS ONLY %
ROW[8..1] : output;
dataout0[16..1] : output; % GREEN LIGHTS %
dataout1[16..1] : output; % RED LIGHTS %
)
begin
IF NIGHT_MODE THEN % IF NIGHT_MODE THEN DISPLAY YELLOW LIGHTS ONLY %
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FFFF",H"FFFF";
H"1"=> H"2",H"FFFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"3F3F",H"3F3F";
H"4"=>H"10",H"3F3F",H"3F3F";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FFFF";
H"7"=>H"80",H"FFFF",H"FFFF";
END TABLE;
ELSE
CASE incount[] IS
% CASE 0~12 : RED LIGHT FOR BRANCH ROAD %
WHEN 0 => % CASE 0~10 : GREEN LIGHT FOR MAIN ROAD %
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 1 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 2 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 3 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 4 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 5 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 6 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 7 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 8 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 9 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 10 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"3FFF",H"FFFF";
H"1"=> H"2",H"3FFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 11 => % CASE 11~12 : YEELLOW LIGHT FOR MAIN ROAD %
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FFFF",H"FFFF";
H"1"=> H"2",H"FFFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"3FFF",H"3FFF";
H"4"=>H"10",H"3FFF",H"3FFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 12 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FFFF",H"FFFF";
H"1"=> H"2",H"FFFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"3FFF",H"3FFF";
H"4"=>H"10",H"3FFF",H"3FFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"FF3F";
H"7"=>H"80",H"FFFF",H"FF3F";
END TABLE;
WHEN 13 => % CASES 13~23 : RED LIGHT FOR MAIN ROAD %
TABLE % CASES 13~21 : GREEN LIGHT FOR BRANCH ROAD %
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 14 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 15 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 16 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 17 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 18 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 19 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 20 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 21 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FF3F",H"FFFF";
H"1"=> H"2",H"FF3F",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FFFF",H"FFFF";
H"4"=>H"10",H"FFFF",H"FFFF";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 22 => % CASES 22~23 : YELLOW LIGHT FOR BRANCH ROAD %
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FFFF",H"FFFF";
H"1"=> H"2",H"FFFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FF3F",H"FF3F";
H"4"=>H"10",H"FF3F",H"FF3F";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
WHEN 23 =>
TABLE
INPUTCLK[2..0]=>ROW[8..1],dataout0[16..1],dataout1[16..1];
H"0"=> H"1",H"FFFF",H"FFFF";
H"1"=> H"2",H"FFFF",H"FFFF";
H"2"=> H"4",H"FFFF",H"FFFF";
H"3"=> H"8",H"FF3F",H"FF3F";
H"4"=>H"10",H"FF3F",H"FF3F";
H"5"=>H"20",H"FFFF",H"FFFF";
H"6"=>H"40",H"FFFF",H"3FFF";
H"7"=>H"80",H"FFFF",H"3FFF";
END TABLE;
END CASE;
END IF;
END;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -