ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

159.233 Assignment 3 - The Superpicocomputer

2019-08-28 18:53:40  阅读:240  来源: 互联网

标签:given Assignment Superpicocomputer next file address microcode your 159.233



159.233 Assignment 3 - The Superpicocomputer!
Due 24th May 2019
This assignment is concerned with the design of a microcoded control unit for a simple CPU. The Picocomputer described in
the lectures notes has 6 simple instructions. The Superpicocomputer for this assignment has 7 instructions, as follows:
Opcode Name Operand Description
0 LDA address Load byte in memory at address given by operand into the Accumulator
1 STA address Store byte in Accumulator in memory at address given by operand
2 ADD address Add byte in memory at address given by operand to the Accumulator
3 SUB address Subtract byte in memory at address given by operand from the Accumulator

159.233作业代做、代写Superpicocomputer作业
4 JMP address Always fetch next instruction from address given by operand
5 JPZ address If Accumulator is zero, fetch next instruction from address given by operand
6 JPC address If last Add or Sub operation caused a carry, fetch next instruction from address given by
operand
Stream has the following files
superpico.lgf - the log file for the superpicocomputer, you are not allowed to change this.
ucodeasm.c - the microcode assembler
picoucode - the microcode text file with the first two instructions completed
The outputs from the microcode ROM are:
oepc, oemem, oeacc, oeconst - output enables
ldmar, ldpc, ldacc, ldabr, ldir - load a register
incpc - increment PC
write - write to memory
sub - perform subtraction instead of addition
irnext - next microinstruction is at address IR+8
carry - bottom bit of next microinstruction address is carry out
eqz - bottom bit of next microinstruction address is eqz
To write the microcode, use the microcode assembler, this lets you type in the microcode as text. A line of microcode starts
with the number of the instruction followed by a colon, this is followed by the outputs that are to be asserted separated by
spaces. A number with a colon before it represents the address of the next micoinstruction and // means the rest of the line is a
comment. The microcode assembler inserts the microcode into the superpico.lgf file and opens it in log. You will need to put
the files in your log folder.
To start the superpicocomputer, clear the 'stop' input by clicking it, to debug your microcode you can step through it by setting
'stop' and then clicking 'step' repeatedly. To reset the PC, set and then clear the 'reset' input. Note that the datapath is very
similar to the datapath for the picocomputer.
Note that the maximum size of the microprogram is 32 instructions and you can't use oepc and incpc in the same
microinstruction. The test program should print Fibonacci numbers. If it does not do this, then your microcode does not work.
Be aware that your microcode does not print Fibonacci numbers, it executes the instructions in my test program to print the
numbers.
You must submit your picoucode file in stream. Submit the text file for your microcode, do not submit the lgf file!.
Marks will be awarded for efficient, working microcode. Use comments in the microcode as documentation. Marks will be
subtracted for plagiarism, late submission and bad documentation. Even if your microcode does not work, you should still
submit it.
M Johnson 2019

因为专业,所以值得信赖。如有需要,请加QQ:99515681 或邮箱:99515681@qq.com

微信:codehelp

标签:given,Assignment,Superpicocomputer,next,file,address,microcode,your,159.233
来源: https://www.cnblogs.com/comp9321/p/11425820.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有