Question

In: Computer Science

Suppose a microprocessor has a 16-bit address bus and a 16-bit data bus, and the addressable...

Suppose a microprocessor has a 16-bit address bus and a 16-bit data bus, and the addressable unit is a byte.

A. If the memory of this microprocessor is 16-bit memory (memory that can input and output data at a time of 16 bits), what is the maximum amount of memory space that the processor can directly access?
B. If the memory of this microprocessor is 8-bit memory (memory that can input and output data 8 bits at a time), what is the maximum amount of memory space that the processor can directly access?
C. If this processor has separate I/O space, what features should it have?
D. If the number of I/O ports is given in 8 bits, how many 8-bit I/O ports (I/O ports that can input and output 8-bit data at one time) can you have?
How many 16-bit I/O ports (I/O ports that can input and output 16-bit data at a time) can you have?

Solutions

Expert Solution

  • The instruction consists of opcode and operands. Given the instruction set of size 12, 4 bits are required for opcode (2^4 = 16).
  • As there are total 64 registers, 6 bits are required for identifying a register.
  • As the instruction contains 3 registers (2 source + 1 designation), 3 * 6 = 18 bit are required for register identifiers.
  • 12 bits are required for immediate value as given.
  • Total bits for an instruction = 4 + 18 + 12 = 34 bits
  • The instructions are required to be stored in a byte-aligned fashion. The nearest byte boundary after 34 bits is at 40 bits (5 bytes).
  • Hence, for 100 instructions, the memory required is 5 * 100 = 500 bytes
  • The instruction bus would be generally as wide as the instructions. Or smaller, as the IC (Integrated Circuit or processor) will then wait for the next instruction and combine two to form the bigger instruction. Thus, you can send a 16-bit instruction over an 8-bit bus.
  • 65,536 bytes

    16 address bits, 16 address pins

    The memory on these CPUs is addressable at the byte level. This leads to a memory addressable limit of 216 × 1 byte = 65,536 bytes or 64 kilobytes.

  • A 16-bit integer can store 216 (or 65,536) distinct values. In an unsigned representation, these values are the integers between 0 and 65,535; using two's complement, possible values range from −32,768 to 32,767. Hence, a processor with 16-bit memory addresses can directly access 64 KB of byte-addressable memory.

  • Each 1 or 0 in a binary number iscalled a bit. From there, a group of 4bits is called a nibble, and 8-bitsmakes a byte. ... It could be 16-bits, 32, 64, or even more.

  • If n=2, you can address 2 locations (0, 1, 2, and 3). As you can see, number of addressable locations = n^2. This means that n=log(1024) to the base 2. Thus, n=10.

  • For example, an 8-bit-byte-addressable machine with a 20-bit address bus (e.g. Intel 8086) can address 220 (1,048,576) memory locations, or one MiB of memory, while a 32-bit bus (e.g. Intel 80386) addresses 232 (4,294,967,296) locations, or a 4 GiB address space.


Related Solutions

What is the description of Intel 8051? what is the microprocessor data and address bus width...
What is the description of Intel 8051? what is the microprocessor data and address bus width of Intel 8051? i need a deep explanation for both atleast 2 paragraphs for each question.
1. Find the number of unique addresses accessed by a 16-bit microprocessor. If the width of...
1. Find the number of unique addresses accessed by a 16-bit microprocessor. If the width of the data bus is also 8 bits, determine the word size in bytes. 2. What is the difference between DRAM and SRAM in terms of their applications? Why do synchronous DRAMs make use of a register, called a mode register?
AMicroprocessor Memory Bus: A microprocessor is clocked at a frequency of 3.75 GHz when communicating with...
AMicroprocessor Memory Bus: A microprocessor is clocked at a frequency of 3.75 GHz when communicating with memory on a printed circuit board (PCB). A 15 cm long transmission line fabricated on a substrate with relative permeativity Er = 4.4 connects the two components. The transmission line has a characteristic impedance of 50 Ohms. (A) Calculate the velocity of the signal through the wire. (B) If we want to read data from the memory, we will have to send a signal...
Write a MIPS program that always checks the bit 0 of a memory data at address...
Write a MIPS program that always checks the bit 0 of a memory data at address 0x0BF81234. If it is equal to one add nth and (n+1)th elements of an array and store it to memory address 0x0BF85678 . Suppose $t0 contains the address of the 0th element of an array of 32-bit data and $t1 = n.
Suppose the memory cells at address 0x00 through 0x0D in the vole contain the following bit...
Suppose the memory cells at address 0x00 through 0x0D in the vole contain the following bit patterns: Address. contents 0x00. 0x20 0x01. 0x04 0x02 0x21 0x03. 0x01 0x04. 0x40 0x05 0x12 0x06. 0x51 0x07. 0x12 0x08 0xB1 0x09. 0x0C 0x0A. 0xB0 0x0B. 0x06 0x0C. 0xC0 0x0D. 0x00 Assume that the machine starts with its program counter contaning 0x00. WHat bit pattern will be in register 0x00 when the machine Halts? WHat bit pattern will be in register 0x01 when the...
write the code for 16-bit ALU using vivado. Approach : A hierarchical design approach for 16-bit...
write the code for 16-bit ALU using vivado. Approach : A hierarchical design approach for 16-bit ALU using a Full Adders (16-bit), Multiplier (16-bit), Full Subtractor (16-bit), and shift left A register. include test bench. S0 S1 Alu-operation 0 0 addition 0 1 subtraction 1 0 multiplication 1 1 shift right
In a microprocessor, can ROM and the output circuit share the same address? Why or why...
In a microprocessor, can ROM and the output circuit share the same address? Why or why not?
Bus Data,Generator Data and Line Data for IEEE 30 Bus System in (p.u)
Bus Data,Generator Data and Line Data for IEEE 30 Bus System in (p.u)
For a direct mapped cache design with 32 bit address, the following bits of the address...
For a direct mapped cache design with 32 bit address, the following bits of the address are used to access the cache Tag Index Offset 31 - 8 7 - 4 3 - 0 What is the cache block size (in words)? How many entries does the cache have? What is the ratio between total bits required for such a cache implementation over the data storage bits? Starting from power on, the following byte-addressed cache references are recorded. Address 0...
Draw the figure for memory segments with 8086 microprocessor software model. Explain the logical address structure...
Draw the figure for memory segments with 8086 microprocessor software model. Explain the logical address structure used for each segment (Explain which registers are used in logical address presentation of each segment; segment address : offset address).
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT