diff options
author | crupest <crupest@outlook.com> | 2021-12-27 20:06:19 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2021-12-27 20:06:19 +0800 |
commit | fa8c35b6a10a971ebb7f51f9c0e2118d527e791c (patch) | |
tree | a9ebe06d44b2340079f4e9bcf300e53952fec9a8 /works/life | |
parent | d122ab74ce2e7c3bf1e126e8b08d6b36d1cf0a83 (diff) | |
download | crupest-fa8c35b6a10a971ebb7f51f9c0e2118d527e791c.tar.gz crupest-fa8c35b6a10a971ebb7f51f9c0e2118d527e791c.tar.bz2 crupest-fa8c35b6a10a971ebb7f51f9c0e2118d527e791c.zip |
import(life): ...
Diffstat (limited to 'works/life')
-rw-r--r-- | works/life/computer-organization-experiment/cpu.vhdl | 25 | ||||
-rw-r--r-- | works/life/computer-organization-experiment/out2.ghw | bin | 0 -> 2244608 bytes |
2 files changed, 24 insertions, 1 deletions
diff --git a/works/life/computer-organization-experiment/cpu.vhdl b/works/life/computer-organization-experiment/cpu.vhdl index 5a7c558..7ca6d9e 100644 --- a/works/life/computer-organization-experiment/cpu.vhdl +++ b/works/life/computer-organization-experiment/cpu.vhdl @@ -112,7 +112,7 @@ begin else A xor B when ALUC(2 downto 0) ?= B"110" else std_logic_vector(signed(A) sll 16) and X"FFFF0000" when ALUC(2 downto 0) ?= B"110" else std_logic_vector(signed(A) sll to_integer(unsigned(B))) when ALUC ?= B"0011" - else std_logic_vector(signed(A) srl to_integer(unsigned(B))) when ALUC ?= B"0111" + else std_logic_vector(signed(A) srl to_integer(unsigned(B))) when ALUC ?= B"1011" else std_logic_vector(signed(A) sra to_integer(unsigned(B))) when ALUC ?= B"1111"; Z <= S ?= X"00000000" after 10 ps; end architecture; @@ -136,6 +136,7 @@ end entity; architecture Behavioral of ram is type memory_type is array (0 to 16#30#) of word; signal memory: memory_type := ( +/* X"3c010000", X"34240080", X"20050004", @@ -172,6 +173,28 @@ architecture Behavioral of ram is X"00000027", X"00000079", X"00000115", +*/ + X"3C010000", + X"3421004C", + X"8C240000", + X"20210004", + X"8C250000", + X"20210004", + X"0C000009", + X"AC230000", + X"08000008", + X"20020010", + X"00001820", + X"30A60001", + X"10060001", + X"00641820", + X"00042040", + X"00052842", + X"2042FFFF", + X"1440FFF9", + X"03e00008", + X"0000C9AE", + X"0000F6E5", others => (others => '0') ); begin diff --git a/works/life/computer-organization-experiment/out2.ghw b/works/life/computer-organization-experiment/out2.ghw Binary files differnew file mode 100644 index 0000000..8a5e9f8 --- /dev/null +++ b/works/life/computer-organization-experiment/out2.ghw |