


Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The solutions to exam three of the ece 2030 computer engineering course held in spring 2002. The solutions cover four problems related to memory systems, state diagrams, datapath elements, and microcode reverse engineering. Students can use this document to check their understanding of the concepts covered in the exam.
Typology: Exams
1 / 4
This page cannot be seen from the preview
Don't miss anything!



4 problems, 4 pages Exam Three Solutions 17 April 2002
Problem 1 (3 parts, 25 points) Memory Systems
Consider a 256 Mbit DRAM chip organized as 4 million addresses of 64-bit words.
Part A (5 points) Draw a DRAM memory cell. Label all signals.
select
Part B (10 points) Suppose both the DRAM cell and the DRAM chip are square. Using the organization approach discussed in class, answer the following questions about the chip.
number of address lines for DRAM chip 4M = 2^22 22 address lines number of columns (^256) M = 228 = 214 = 16 K
number of words per column (^16) K 64 = 214 26 = 28 = 256
column decoder required ( n to m ) 14 to 16K
number of muxes required 64
Part C (10 points) Consider a four Gbit (gigabit) memory system with 32 million addresses of 128-bit words using the described 256 Mbit DRAM.
number of address lines for memory system 32M = 2^25 25 address lines
number of chips needed in one bank 128/64 = 2 number of banks for memory system 32M / 4M = 8
memory decoder required ( n to m ) 3 to 8 number of DRAM chips required 2 x 8 = 16
4 problems, 4 pages Exam Three Solutions 17 April 2002
Problem 2 (1 part, 15 points) State What?
Implement (draw) a state diagram that satisfies the following rules. Use proper state table notation. Hint: the state variable is the binary number inside the circle.
4 problems, 4 pages Exam Three Solutions 17 April 2002
Problem 4 (6 parts, 35 points) Microcode Reverse Engineering
The microcode fragment below is a mysterious program that runs on the provided datapath handout. All values are in hexadecimal. Unfortunately, don’t care values (X) have been converted to zeros. For full credit, be as specific and concise as you can (e.g., list shift types, amounts, and directions, logical functions, memory addresses and operations, etc.)
cycle X Y Z rwe im en im va au en -a/s lu en lf su en st ld en st en r/-w msel 1 0 0 1 1 1 3E8 0 0 1 C 0 0 0 0 0 0 2 1 0 0 1 0 0 0 0 0 0 0 0 1 0 1 1 3 0 0 3 1 1 18 0 0 0 0 1 0 0 0 0 0 4 0 0 2 1 1 10 0 0 0 0 1 0 0 0 0 0 5 2 0 2 1 1 FF 0 0 1 8 0 0 0 0 0 0 6 3 2 3 1 0 0 1 0 0 0 0 0 0 0 0 0 7 0 0 2 1 1 8 0 0 0 0 1 0 0 0 0 0 8 2 0 2 1 1 FF 0 0 1 8 0 0 0 0 0 0 9 3 2 3 1 0 0 1 0 0 0 0 0 0 0 0 0 10 0 0 2 1 1 FF 0 0 1 8 0 0 0 0 0 0 11 3 2 3 1 0 0 1 0 0 0 0 0 0 0 0 0 12 3 0 0 1 1 2 0 0 0 0 1 1 0 0 0 0 13 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1
Part A (5 points) Describe the operation that occurs during cycle 2 (be specific)?
R0 <- mem[1000] For the remaining parts, assume R0 contains the value 0x12345678 (hexadecimal) following cycle 2. Part B (5 points) What is the value (in hexadecimal) in R3 following when cycle 3 completes?
0x Part C (5 points) What is the value (in hexadecimal) in R2 following when cycle 5 completes?
0x Part D (5 points) What is the value (in hexadecimal) in R3 following when cycle 6 completes?
0x Part E (5 points) Describe the operation that occurs during cycle 12 (be specific).
R0 <- R3 / 4 Part F (10 points) Describe the operation of this microcode fragment (be specific).
Mem[1000] is replaced by the average of four packed 8-bit values in mem[1000]