Lab 7
docx
keyboard_arrow_up
School
Laredo College *
*We aren’t endorsed by this school
Course
1449
Subject
Electrical Engineering
Date
Apr 3, 2024
Type
docx
Pages
4
Uploaded by CaptainRain803
Pedro Leon Lab 7
1. What are the Inputs to the ROM and how many rows must the ROM have?
The inputs generally consist of an address bus and, occasionally, control signals. The ROM's capacity, expressed in terms of the number of rows or entries, is directly tied to the width of the address bus. The address bus width dictates the range of unique addresses that can be employed to access data stored within the ROM.
2. How many outputs and how many columns must the ROM have?
The number of outputs can vary based on the data stored at each address, and the number of columns is determined by the word size of the ROM.
3. How many effective address lines?
The number of effective address lines in a ROM is equivalent to the width of the ROM's address bus.
4. Write the equations you could use if you implemented it with 2 FF and coded the 3 States 00, 01 and 10 for A and B FF.
It will be somethingg like this A_next = ~A & B , B_next = A & ~B
5. Did you provide for Q and Q’ outputs from your FF’s? Why would this be helpful?
Yeah since it can offer flexibility and signal accessibility, and is essential for various logic and control operations within a circuit.
5. Which method required more resources on the FPGA (check the usage report)?
Creating multiple instances of a smaller counter can lead to higher resource consumption because it involves additional overhead related to control logic and the connections required between these counter instances.
6. Which method did you find was easier to do?
Using a counter with a parallel load I believe that it was the most straightforward or easier.
7. Paste in your code.
module ROM(
output [7:0] LED,
output [4:0] Ao,
input [7:0] D,
input [4:0] A,
input Clear,
input Load,
input CLK);
reg [7:0] Store [0:31];
initial begin Store[0]<=8'b00000000;
Store[1]<=8'b00000000;
Store[2]<=8'b00000000;
Store[3]<=8'b00000000;
Store[4]<=8'b00000000;
Store[5]<=8'b00000000;
Store[6]<=8'b00000000;
Store[7]<=8'b00000000;
Store[8]<=8'b00000000;
Store[9]<=8'b00000000;
Store[10]<=8'b00000000;
Store[11]<=8'b00000000;
Store[12]<=8'b00000000;
Store[13]<=8'b00000000;
Store[14]<=8'b00000000;
Store[15]<=8'b00000000;
Store[16]<=8'b00000000;
Store[17]<=8'b00000000;
Store[18]<=8'b00000000;
Store[19]<=8'b00000000;
Store[20]<=8'b00000000;
Store[21]<=8'b00000000;
Store[22]<=8'b00000000;
Store[23]<=8'b00000000;
Store[24]<=8'b00000000;
Store[25]<=8'b00000000;
Store[26]<=8'b00000000;
Store[27]<=8'b00000000;
Store[28]<=8'b00000000;
Store[29]<=8'b00000000;
Store[30]<=8'b00000000;
Store[31]<=8'b00000000;
end
assign LED = Store[A];
assign Ao = A;
always @(posedge CLK)
begin if(Clear)
begin
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
Store[A] <= 8'b00000000;
end
else if(Load)
begin
Store[A] <= D;
end
end
endmodule
Related Questions
New Solution
arrow_forward
Assume that memory location $c100 holds a data byte =$37, [ACCA]= $B8 and [ACCB]=$FE. For each of the following instructions determine the
resultant content of ACCA or ACCB.
(a) ANDA $C100
(b) ANDA #$05
ORAB #$EE
(c)
(d) CLR B
(e) NEGA
(f)
DECB
(g) ASLA
(h) LSRB
(i)
EORA #$E4
(G) ROR A
arrow_forward
part d, e, f
arrow_forward
Q3/(A) False OR True
1- A0-0 and BHE-1 are used as low bank-select signal:
2-AX is 2234 H after executing the following instruction: AAS. If AX-2234H.
3-IP register holds the offset address of the next instruction to be executed.
4- The XLAT instruction in 8086 assembly language is used to perform arithmetic
operations between two memory operands.
5- Bus interface unit is responsible form
arrow_forward
"I need proof in the solution and a supported
source with the solution."
Write a 8086 microprocessor program to clear (100) consecutive memory locations starting at
offset address 8000H. Assume the data segment value equal to 3000H
write an 8086 microprocessor program to add two numbers each of four bytes. The first number
(least significant byte) starts at memory offset 0500H and the second number (least significant byte)
start at offset memory address 0600H Assume the data segment value equal to 0100H.Store the result
at memory offset starts 0800H
write a program to move a block of 100 numbers consecutive bytes of data strings at
offset address 8000 H in memory to another block of memory locations starting at offset
address A000 H. assume that both blocks are in the same data segment value 3000H
(25 Marks)
Write a program to multiply AX by (10.5) using shift instruction
arrow_forward
3. Suppose r0=0x20000000 and r1=0x12345678. All bytes in memory are initialized to 0x00.
Suppose the following assembly program has run successfully (the three instructions will be
executed in the given order). Draw a table to show the memory value if the processor uses little
endian.
STR r1, [r0], #4
STR r1, [r0,#4]!
STR r1, [r0, # 4]
Address
0x20000010
0x2000000f
0x2000000e
0x2000000d
0x2000000c
0x2000000b
0x2000000a
0x20000009
0x20000008
0x20000007
0x20000006
0x20000005
0x20000004
0x20000003
0x20000002
0x20000001
0x20000000
Data
arrow_forward
Implement a byte-addressable instruction memory using Verilog (address locations are 8 bit)
Information in Image
arrow_forward
Choose the right answer :
arrow_forward
i need the answer quickly
arrow_forward
Match each of the various types of ROM with the best description.
MROM
PROM
EPROM
EEPROM
flash EEPROM
A.
programmed by burning fuses
B.
must be removed to be reprogrammed
C.
single bits can be erased
D.
the whole chip can be erased without removing it
E.
only econonical for large batches of chips
arrow_forward
Memory Capacity:
64 bytes of RAM and 64 bytes of ROM
Chips Available:
32x8 RAM and 64x8 ROM
Show how the address lines and how the RAM and ROM chips will be selected.
arrow_forward
Explain a XYZ method of transferring data from the computer's RAM to
another part of the computer without processing it using the CPU. As a sound
card may need to access data stored in the computer's RAM, but since it can
process the data itself, XYZ is a means of having a peripheral device control a
processor's memory bus directly. It permits the peripheral, such as a UART, to
transfer data directly to or from memory without having each byte (or word)
handled by the processor. Draw a diagram of the unit used in XYZ and how data is transferred using this method.
arrow_forward
SEE MORE QUESTIONS
Recommended textbooks for you

Related Questions
- New Solutionarrow_forwardAssume that memory location $c100 holds a data byte =$37, [ACCA]= $B8 and [ACCB]=$FE. For each of the following instructions determine the resultant content of ACCA or ACCB. (a) ANDA $C100 (b) ANDA #$05 ORAB #$EE (c) (d) CLR B (e) NEGA (f) DECB (g) ASLA (h) LSRB (i) EORA #$E4 (G) ROR Aarrow_forwardpart d, e, farrow_forward
- Q3/(A) False OR True 1- A0-0 and BHE-1 are used as low bank-select signal: 2-AX is 2234 H after executing the following instruction: AAS. If AX-2234H. 3-IP register holds the offset address of the next instruction to be executed. 4- The XLAT instruction in 8086 assembly language is used to perform arithmetic operations between two memory operands. 5- Bus interface unit is responsible formarrow_forward"I need proof in the solution and a supported source with the solution." Write a 8086 microprocessor program to clear (100) consecutive memory locations starting at offset address 8000H. Assume the data segment value equal to 3000H write an 8086 microprocessor program to add two numbers each of four bytes. The first number (least significant byte) starts at memory offset 0500H and the second number (least significant byte) start at offset memory address 0600H Assume the data segment value equal to 0100H.Store the result at memory offset starts 0800H write a program to move a block of 100 numbers consecutive bytes of data strings at offset address 8000 H in memory to another block of memory locations starting at offset address A000 H. assume that both blocks are in the same data segment value 3000H (25 Marks) Write a program to multiply AX by (10.5) using shift instructionarrow_forward3. Suppose r0=0x20000000 and r1=0x12345678. All bytes in memory are initialized to 0x00. Suppose the following assembly program has run successfully (the three instructions will be executed in the given order). Draw a table to show the memory value if the processor uses little endian. STR r1, [r0], #4 STR r1, [r0,#4]! STR r1, [r0, # 4] Address 0x20000010 0x2000000f 0x2000000e 0x2000000d 0x2000000c 0x2000000b 0x2000000a 0x20000009 0x20000008 0x20000007 0x20000006 0x20000005 0x20000004 0x20000003 0x20000002 0x20000001 0x20000000 Dataarrow_forward
- Match each of the various types of ROM with the best description. MROM PROM EPROM EEPROM flash EEPROM A. programmed by burning fuses B. must be removed to be reprogrammed C. single bits can be erased D. the whole chip can be erased without removing it E. only econonical for large batches of chipsarrow_forwardMemory Capacity: 64 bytes of RAM and 64 bytes of ROM Chips Available: 32x8 RAM and 64x8 ROM Show how the address lines and how the RAM and ROM chips will be selected.arrow_forwardExplain a XYZ method of transferring data from the computer's RAM to another part of the computer without processing it using the CPU. As a sound card may need to access data stored in the computer's RAM, but since it can process the data itself, XYZ is a means of having a peripheral device control a processor's memory bus directly. It permits the peripheral, such as a UART, to transfer data directly to or from memory without having each byte (or word) handled by the processor. Draw a diagram of the unit used in XYZ and how data is transferred using this method.arrow_forward
arrow_back_ios
arrow_forward_ios
Recommended textbooks for you
