Archived
1
0

Initial commit

This commit is contained in:
github-classroom[bot]
2024-02-23 13:01:05 +00:00
committed by GitHub
commit d212040c30
1914 changed files with 1290006 additions and 0 deletions

View File

@ -0,0 +1,54 @@
ARCHITECTURE studentVersion OF charToMorseController IS
signal isA, isB, isC, isD, isE, isF, isG, isH,
isI, isJ, isK, isL, isM, isN, isO, isP,
isQ, isR, isS, isT, isU, isV, isW, isX,
isY, isZ,
is0, is1, is2, is3, is4, is5, is6, is7,
is8, is9 : std_ulogic;
BEGIN
------------------------------------------------------------------------------
-- conditions for morse units
isA <= '1' when std_match(unsigned(char), "1-0" & x"1") else '0';
isB <= '1' when std_match(unsigned(char), "1-0" & x"2") else '0';
isC <= '1' when std_match(unsigned(char), "1-0" & x"3") else '0';
isD <= '1' when std_match(unsigned(char), "1-0" & x"4") else '0';
isE <= '1' when std_match(unsigned(char), "1-0" & x"5") else '0';
isF <= '1' when std_match(unsigned(char), "1-0" & x"6") else '0';
isG <= '1' when std_match(unsigned(char), "1-0" & x"7") else '0';
isH <= '1' when std_match(unsigned(char), "1-0" & x"8") else '0';
isI <= '1' when std_match(unsigned(char), "1-0" & x"9") else '0';
isJ <= '1' when std_match(unsigned(char), "1-0" & x"A") else '0';
isK <= '1' when std_match(unsigned(char), "1-0" & x"B") else '0';
isL <= '1' when std_match(unsigned(char), "1-0" & x"C") else '0';
isM <= '1' when std_match(unsigned(char), "1-0" & x"D") else '0';
isN <= '1' when std_match(unsigned(char), "1-0" & x"E") else '0';
isO <= '1' when std_match(unsigned(char), "1-0" & x"F") else '0';
isP <= '1' when std_match(unsigned(char), "1-1" & x"0") else '0';
isQ <= '1' when std_match(unsigned(char), "1-1" & x"1") else '0';
isR <= '1' when std_match(unsigned(char), "1-1" & x"2") else '0';
isS <= '1' when std_match(unsigned(char), "1-1" & x"3") else '0';
isT <= '1' when std_match(unsigned(char), "1-1" & x"4") else '0';
isU <= '1' when std_match(unsigned(char), "1-1" & x"5") else '0';
isV <= '1' when std_match(unsigned(char), "1-1" & x"6") else '0';
isW <= '1' when std_match(unsigned(char), "1-1" & x"7") else '0';
isX <= '1' when std_match(unsigned(char), "1-1" & x"8") else '0';
isY <= '1' when std_match(unsigned(char), "1-1" & x"9") else '0';
isZ <= '1' when std_match(unsigned(char), "1-1" & x"A") else '0';
is0 <= '1' when std_match(unsigned(char), "011" & x"0") else '0';
is1 <= '1' when std_match(unsigned(char), "011" & x"1") else '0';
is2 <= '1' when std_match(unsigned(char), "011" & x"2") else '0';
is3 <= '1' when std_match(unsigned(char), "011" & x"3") else '0';
is4 <= '1' when std_match(unsigned(char), "011" & x"4") else '0';
is5 <= '1' when std_match(unsigned(char), "011" & x"5") else '0';
is6 <= '1' when std_match(unsigned(char), "011" & x"6") else '0';
is7 <= '1' when std_match(unsigned(char), "011" & x"7") else '0';
is8 <= '1' when std_match(unsigned(char), "011" & x"8") else '0';
is9 <= '1' when std_match(unsigned(char), "011" & x"9") else '0';
morseOut <= '0';
startCounter <= '0';
unitNb <= (others => '-');
END ARCHITECTURE studentVersion;

View File

@ -0,0 +1,6 @@
ARCHITECTURE studentVersion OF characterRegister IS
BEGIN
charOut <= (others => '0');
END ARCHITECTURE studentVersion;

View File

@ -0,0 +1,9 @@
library Common;
use Common.CommonLib.all;
ARCHITECTURE studentVersion OF envelopeRetreiver IS
BEGIN
morseEnvelope <= '0';
END ARCHITECTURE studentVersion;

View File

@ -0,0 +1,7 @@
ARCHITECTURE studentVersion OF morseToCharDecoder IS
BEGIN
charValid <= '0';
charOut <= (others => '0');
END ARCHITECTURE studentVersion;

View File

@ -0,0 +1,11 @@
library Common;
use Common.CommonLib.all;
ARCHITECTURE studentVersion OF symbolLengthCounter IS
BEGIN
symbolValid <= '0';
symbolValue <= '0';
symbolDuration <= (others => '0');
END ARCHITECTURE studentVersion;

View File

@ -0,0 +1,28 @@
library Common;
use Common.CommonLib.all;
ARCHITECTURE studentVersion OF toneGenerator IS
constant toneCounterBitNb: positive := requiredBitNb(toneDivide-1);
signal toneCounter: unsigned(toneCounterBitNb-1 downto 0);
constant toneMin : natural := (2**toneCounterBitNb - toneDivide) / 2;
constant toneMax : natural := toneMin + toneDivide;
BEGIN
divide: process(reset, clock)
begin
if reset = '1' then
toneCounter <= to_unsigned(toneMin, toneCounter'length);
elsif rising_edge(clock) then
if toneCounter = toneMax then
toneCounter <= to_unsigned(toneMin, toneCounter'length);
else
toneCounter <= toneCounter + 1;
end if;
end if;
end process divide;
tone <= toneCounter(toneCounter'high);
END ARCHITECTURE studentVersion;

View File

@ -0,0 +1,61 @@
library Common;
use Common.CommonLib.all;
ARCHITECTURE studentVersion OF unitCounter IS
signal unitCounter: unsigned(requiredBitNb(unitCountDivide)-1 downto 0);
signal unitCountDone: std_ulogic;
signal unitNbCounter: unsigned(unitnB'range);
signal unitNbCountDone: std_ulogic;
BEGIN
-- count unit base period
countUnitDuration: process(reset, clock)
begin
if reset = '1' then
unitCounter <= (others => '0');
elsif rising_edge(clock) then
if unitCounter = 0 then
if (startCounter = '1') or (unitNbCounter > 0) then
unitCounter <= unitCounter + 1;
end if;
else
if unitCountDone = '0' then
unitCounter <= unitCounter + 1;
else
unitCounter <= (others => '0');
end if;
end if;
end if;
end process countUnitDuration;
unitCountDone <= '1' when unitCounter = unitCountDivide
else '0';
-- count unit period number
countPeriods: process(reset, clock)
begin
if reset = '1' then
unitNbCounter <= (others => '0');
elsif rising_edge(clock) then
if unitNbCounter = 0 then
if startCounter = '1' then
unitNbCounter <= unitNbCounter + 1;
end if;
else
if unitNbCountDone = '0' then
if unitCountDone = '1' then
unitNbCounter <= unitNbCounter + 1;
end if;
else
unitNbCounter <= (others => '0');
end if;
end if;
end if;
end process countPeriods;
unitNbCountDone <= '1' when (unitNbCounter = unitNb) and (unitCountDone = '1')
else '0';
done <= unitNbCountDone;
END ARCHITECTURE studentVersion;

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1 @@
DIALECT atom VHDL_2008

View File

@ -0,0 +1,3 @@
DEFAULT_ARCHITECTURE atom struct
DEFAULT_FILE atom char@to@morse/struct.bd
TOP_MARKER atom 0

View File

@ -0,0 +1,2 @@
DEFAULT_ARCHITECTURE atom studentVersion
DEFAULT_FILE atom charToMorseController_studentVersion.vhd

View File

@ -0,0 +1,2 @@
DEFAULT_FILE atom envelopeRetreiver_studentVersion.vhd
DEFAULT_ARCHITECTURE atom studentVersion

View File

@ -0,0 +1,3 @@
DEFAULT_FILE atom morse@decoder/struct.bd
DEFAULT_ARCHITECTURE atom struct
TOP_MARKER atom 1

View File

@ -0,0 +1,3 @@
DEFAULT_ARCHITECTURE atom struct
DEFAULT_FILE atom morse@encoder/struct.bd
TOP_MARKER atom 1

View File

@ -0,0 +1,2 @@
DEFAULT_FILE atom morseToCharDecoder_studentVersion.vhd
DEFAULT_ARCHITECTURE atom studentVersion

View File

@ -0,0 +1,2 @@
DEFAULT_FILE atom symbolLengthCounter_studentVersion.vhd
DEFAULT_ARCHITECTURE atom studentVersion

View File

@ -0,0 +1,2 @@
DEFAULT_ARCHITECTURE atom studentVersion
DEFAULT_FILE atom toneGenerator_studentVersion.vhd

View File

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff