![]() ![]() This may also occur due some input being disconnected, i.e., 'floating'. Then you can clear Timing and clear Unknowns, and then run the circuit. ![]() This may occur when you just start or modified a circuit. the "1010" one might expect from the procedure body.ĭoes anyone recognize the error I've made? I'm 98% sure it's a really stupid sort of problem that a noob like me wouldn't understand yet. In LogicWorks, an 'X' means 'unknown', i.e., the LogicWorks software doesn't know whether the value should be a 0 or 1. (Specifically, after 50 ns of zeros, all signals go to "UUUU" instead of e.g. Variable tmpr: std_logic_vector(3 downto 0) Īs you might guess, the commented out main loop works fine, whereas the for loop using the procedure doesn't work. variable invar, outvar: std_logic_vector(3 downto 0) LogicWorks 5 Version History uses cookies to personalize content, tailor ads and improve the user experience. ![]() Variable tmpr: std_logic_vector(3 downto 0) := "1010" it assumes the file is a newline-separated list of strings no error checking of any sort is performed by this function Procedure read_slv(file F: text value: inout std_logic_vector) is Signal the_other: std_logic_vector(3 downto 0) := "0000" įile da_goods: TEXT open read_mode is "C:\Users\~~~~\playground\goods" we use a full adder because when a carry-in bit is available, another 1-bit adder must be used since a 1-bit half-adder does not take a carry-in bit. Signal a_signal_p: std_logic_vector(3 downto 0) := "0000" A full adder logic is designed in such a manner that can take eight inputs together to create a byte-wide adder and cascade the carry bit from one adder to another. ![]()
0 Comments
Leave a Reply. |