Signed on märgiga arv ja unsigned märgita arv, signed puhul näitab esimene bitt märki, 1 on – ja 0 on +. 48. Mida tähendab VHDLi kood: x <= a & b;? a-le lisatakse järgi b ja selle tehte tulemus omistatakse X-ile. 49. Nimeta kaks moodust VHDLis konverteerimise kasutamiseks? to_signed(S), signed(S); 50. Missugused operaatorid (tehtemärgid) on VHDLis kasutatavad? Nimetage vähemalt 5 And, or, not, +, - 51. Olgu meil: SIGNAL d : STD_LOGIC_VECTOR (7 DOWNTO 0); Mis väärtused on: d'LOW, d'HIGH, d'LEFT, d'RIGHT, d'LENGTH, d'RANGE=( ), d'REVERSE_RANGE=( )? d’LOW – tagastab madalaima massiivi indeksi d’HIGH – tagastab kõrgeima massiivi indeksi d’LEFT – tagastab vasakpoolseima massiivi indeksi d’RIGHT – tagastab parempoolseima -,,- d’LENGTH – tagastab massiivi pikkuse d’RANGE – tagastab massiivi ulatuse d’REVERSE_RANGE – ulatus vastupidises järjekorras 52. Mille tagastab meile s'EVENT ja s'STABLE?
U3: f_system port map (x1, x2, x3, y1c, y2c, y3c, y4c); U4: f_system port map (x1, x2, x3, y1d, y2d, y3d, y4d); y1x <= compare_signals (y1a, y1b, y1c, y1d); --võrdleb kõiki y1 tulemusi y2x <= compare_signals (y2a, y2b, y2c, y2d); --võrdleb kõiki y2 tulemusi y3x <= compare_signals (y3a, y3b, y3c, y3d); -- võrdleb kõiki y3 tulemusi y4x <= compare_signals (y4a, y4b, y4c, y4d); -- võrdleb kõiki y4 tulemusi Toplevel entity toplevel is Port ( led : out STD_LOGIC_VECTOR (7 downto 0);---defineerime väljund LEDid sw : in STD_LOGIC_VECTOR (2 downto 0));--defineerime sisendid end toplevel; architecture structure of toplevel is component f_system port ( x1,x2,x3: in std_logic; --defineerime f_system komponendi sisendid k, l, m, n: out std_logic ); --defineerime f_system komponendi väljundid end component; for U1: f_system use entity work.f_system(tabel);--ütleme U1, et kasutaks tõeväärtust for U2: f_system use entity work
c_out, y : out bit ); end FullAdder; -- Architecture andmevoo esitusviisiga architecture dataflow of FullAdder is begin -- Väljundi y arvutamine y <= a xor b xor c_in; -- Ülekande arvutamine c_out <= (a and b) or (c_in and (a xor b)); end dataflow; -- Täissummaator -- 4-bit liitja/lahutaja library IEEE; use IEEE.STD_LOGIC_1164.all; -- Entity entity Summator is -- Sisend/väljund portide kirjeldus port ( A : in bit_vector(3 downto 0); -- Input port A of the summator B : in bit_vector(3 downto 0); -- Input port B of the summator Y : out bit_vector(3 downto 0); -- Output port Y of the summator carry_in : in bit; -- Carry bit input carry_out : out bit; -- Carry bit output subtract : in bit -- Operation flag: if subtract = '0' then Y = A +B +c_in, if subtract = '1' then Y = A - B - c_in );
-- IAY0150 - Homework #1. Truth table ------------------------------------------------------------------------ library IEEE; use IEEE.std_logic_1164.all; entity f_system is port ( x1, x2, x3, x4: in std_logic; y1, y2, y3, y4: out std_logic ); end entity f_system; library IEEE; use IEEE.std_logic_1164.all; architecture tabel of f_system is begin process (x1, x2, x3, x4) variable in_word, out_word: std_logic_vector (3 downto 0); begin in_word := x1 & x2 & x3 & x4; case in_word is when "0000" => out_word := "0101"; when "0001" => out_word := "11-1"; when "0010" => out_word := "01-1"; when "0011" => out_word := "0-1-"; when "0100" => out_word := "-110"; when "0101" => out_word := "0011"; when "0110" => out_word := "011-"; when "0111" => out_word := "1-11"; when "1000" => out_word := "1110"; when "1001" => out_word := "10-0";
Tingimuse kasutamine järelkontrolliga korduslauses võib jääda pisut segaseks ning sellel on ka
põhjus. Ma ei saa konkreetsemalt rääkida, sest erinevad keeled kasutavad seda tingimust
erinevalt. Näiteks keeles Pascal lõpetatakse tegevus siis, kui tingimus on tõene ning vastupidisel
juhul jätkatakse tegevust. Keeles C toimitakse vastupidiselt. Kuid see ei ole põhimõtteline
erinevus.
Korduslaused keeles Pascal
Määratud korduse süntaks:
'FOR'
Tingimuse kasutamine järelkontrolliga korduslauses võib jääda pisut segaseks
ning sellel on ka põhjus. Ma ei saa konkreetsemalt rääkida, sest erinevad
keeled kasutavad seda tingimust erinevalt. Näiteks keeles Pascal lõpetatakse
tegevus siis, kui tingimus on tõene ning vastupidisel juhul jätkatakse tegevust.
Keeles C toimitakse vastupidiselt. Kuid see ei ole põhimõtteline erinevus.
Korduslaused keeles Pascal
Määratud korduse süntaks:
'FOR'