CSC270 Homework 9 2016

From dftwiki3
Revision as of 07:56, 7 April 2016 by Thiebaut (talk | contribs) (Created page with "--~~~~ ---- <bluebox>This homework can be worked on in pairs, and should be submitted Thursday 4/14/16 before 11:55 p.m.</bluebox> <br /> =Problem 1= <br /> By now you shouldn...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

--D. Thiebaut (talk) 07:56, 7 April 2016 (EDT)


This homework can be worked on in pairs, and should be submitted Thursday 4/14/16 before 11:55 p.m.


Problem 1


By now you shouldn't be surprised that in this problem I will ask you to combine hardware and software to solve a particular problem, and also use your knowledge of both to figure out the peak performance of the design. Once you have done this a few times, then you will discover that it is actually quite easy to figure out how fast some operations can be done in a computer, once you know the processor, its speed, and the way the I/O works.
Assume that we have a device or sensor that constantly generates 8 bits of data. These 8 bits are fed into a simple system of 8 tristate drivers that connect to the data bus of a 1 MHz 6811 processor. The tristate enable signal is controlled by the enable output (Y4') of a 3-to-8 decoder connected to the most-significant bits of the address bus, similar to what we have done in class for the past few lectures/labs.
When the processor executes a "LDAA 8000", the 8 bits are read from the sensor and stored in the Acca accumulator.
We want to be able to capture 1000 bytes of this sensor and store these samples into an array in memory. The array starts at address 0100. We want to know how fast we can sample this sensor data and gather 1000 bytes of values in memory. In other words, write a software solution in 6811 assembly that will have this property:

  1. it will read 1000 bytes from the input port,
  2. it will store these 1000 bytes into an array of 1000 bytes in RAM
  3. it will stop after 1000 bytes are read and return to the monitor (JSR C000).


As for Homework 8, the grade will include a component that will be based on how fast your solution is. The closest your solution is to the fastest time possible, the higher the grade.