Marking of Midterm Exam
Questions 1 and 2 were marked. The exam is marked out of
20.
For question 1 one mark was assigned for each of the following:
- correct library and use statements
- correct entity and architecture declarations
- correct declaration of register signals in the architecture
- the use of local versions of the output signals up and down (or
two uses of the comparison operators)
- (2 marks) correct generation of the up and down outputs
- (4 marks) correct calculation of register update values:
- reset (with priority over other operations)
- increment
- decrement
- hold
- process statement to instatiate the register
For question 2 marks were awarded as follows:
- INput from 30H
- AND with 01H
- conditional branch
- indexed MOVE (of one BYTE)
- OUTput to 50H
- increment a pointer
- decrement a count
- conditional branch
- return
However, random combinations of the above statements clearly do
not constitute a correct solution.
If significant portions of the solution's algorithm was not
correct then marks were only awarded for those portions that were
logically correct as follows:
- 3 marks for correctly testing the status register bit at 30H
and the related conditinal branch
- 3 marks for correctly retrieving a value from the buffer and
outputting it to the data register
- 2 marks for a correct loop that increments a pointer,
decrements a counter and does the correct conditional branch to
the right place in the routine
- 1 mark for correct termination of the routine (including
return)
In the above cases each part of the solution had to be completely
correct to be awarded marks.
One-half mark was deducted for minor errors such as not taking
into account the value of CX could be zero.
EECE 379 Home Page