📄 经过验证的可以在basys上跑的risc8.htm
字号:
face="Times New Roman">ROM</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">显的又有些费神,所以我们干脆自己利用</SPAN><SPAN><FONT
face="Times New Roman">Xilinx</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">公司提供的</SPAN><SPAN><FONT
face="Times New Roman">ISE</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">中的</SPAN><SPAN><FONT
face="Times New Roman">IP</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">核生成工具,自己为</SPAN><SPAN><FONT
face="Times New Roman">CPU</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">量身定做了一个合适的</SPAN><SPAN><FONT
face="Times New Roman">ROM</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">挂在了上面。而它的初始化相比较而言就很简单了,因为在基于</SPAN><SPAN><FONT
face="Times New Roman">IP</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">核的</SPAN><SPAN><FONT
face="Times New Roman">ROM</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">的生成过程中会自动提示我们用</SPAN><SPAN><FONT
face="Times New Roman">.coe</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">文件对其进行初始化。</SPAN><SPAN><FONT
face="Times New Roman">RAM</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">最初在该核中已经挂上了,再加上最基本的一些结构,一个可以工作的</SPAN><SPAN><FONT
face="Times New Roman">RISC8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">就架构起来了。</SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><SPAN
style="FONT-FAMILY: 宋体">虽然结构架构起来了,但实现起来的时候还是有一些问题的,针对我们所采用的</SPAN><SPAN><FONT
face="Times New Roman">RISC8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">,在进行资源分配的时候遇到了同处理</SPAN><SPAN><FONT
face="Times New Roman">51</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">核的时候同样的问题。当然,</SPAN><SPAN><FONT
face="Times New Roman">RISC8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">就是</SPAN><SPAN><FONT
face="Times New Roman">RISC8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">,它和</SPAN><SPAN><FONT
face="Times New Roman">51</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">就是不同:资源不够仅是引脚资源分配问题,并没有涉及到一些其它的根本性资源的问题。这样就好办了:把一些没有用到的引脚去掉就是了(看来也要学会勇敢的放弃了)。有了理论的指导再加上实践的探索:</SPAN><SPAN><FONT
face="Times New Roman">RISC8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">就放在</SPAN><SPAN><FONT
face="Times New Roman">XC3S100E</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">里了。</SPAN></P>
<P class=MsoNormal
style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt"><SPAN><FONT
face="Times New Roman"><SPAN> </SPAN><SPAN> </SPAN></FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">硬件结构弄好了,接下来就是验证它到底能不能工作了。不过这一步就很简单了,没有什么仿真器、没有调试接口,索性直接写个简单的程序跑一下就行了(这个就很简单了,因为它的指令集基本是和</SPAN><SPAN><FONT
face="Times New Roman">PIC16C57</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">是一样的,所以所谓的编程就是针对</SPAN><SPAN><FONT
face="Times New Roman">PIC16C57</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">的编程了)。毕竟只是稍微的验证一下,简单的程序就可以了:干脆来个经典的流水灯吧,记得我们学习</SPAN><SPAN><FONT
face="Times New Roman">51</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">单片机的时候所做的第一个程序就是流水灯,这次也不例外。利用</SPAN><SPAN><FONT
face="Times New Roman">PIC</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">单片机开发工具</SPAN><SPAN><FONT
face="Times New Roman">MPLAB</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">简简单单的就工程编译了,输出得到</SPAN><SPAN><FONT
face="Times New Roman"> .HEX</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">文件,再利用转换工具得到</SPAN><SPAN><FONT
face="Times New Roman"> .BIN</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">文件,在经过一次转换得到</SPAN><SPAN><FONT
face="Times New Roman"> .coe</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">文件。呵呵,接下来的事情就不用说了。</SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN><SPAN><FONT
face="Times New Roman">
</FONT></SPAN></SPAN><SPAN
style="FONT-FAMILY: 宋体">下面就是我们所采用的</SPAN><SPAN><FONT
face="Times New Roman">RISC8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">核的压缩包,还有我们的工程的主要源文件(</SPAN><SPAN><FONT
face="Times New Roman">HDL</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">代码就在</SPAN><SPAN><FONT
face="Times New Roman">RISC8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">压缩包中,</SPAN><SPAN><FONT
face="Times New Roman">PIC</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">程序的汇编代码为</SPAN><SPAN><FONT
face="Times New Roman">led.asm</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">,还有经过</SPAN><SPAN><FONT
face="Times New Roman">ISE</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">一系列编译综合得到的编程下载文件</SPAN><SPAN><FONT
face="Times New Roman">led.bit</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">文件)。最终的结果显示就是:</SPAN><SPAN><FONT
face="Times New Roman">BASYS</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">开发板上的</SPAN><SPAN><FONT
face="Times New Roman">8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">个</SPAN><SPAN><FONT
face="Times New Roman">LED</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">灯依次从右到左循环闪亮。(注:在开发板上所选择的时钟频率不要太高,因为所综合出来的硬件结构所能够接受的最大时钟频率为</SPAN><SPAN><FONT
face="Times New Roman">58M</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">左右,所以可以选择</SPAN><SPAN><FONT
face="Times New Roman">25M</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">或者是</SPAN><SPAN><FONT
face="Times New Roman">50M</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">的时钟)。</SPAN><SPAN
style="FONT-FAMILY: 宋体">以上就是我们在</SPAN><SPAN><FONT
face="Times New Roman">BASYS</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">上跑</SPAN><SPAN><FONT
face="Times New Roman">RISC8</FONT></SPAN><SPAN
style="FONT-FAMILY: 宋体">的过程。</SPAN></P>
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><SPAN
style="FONT-FAMILY: 宋体">
虽然十一黄金周也没有休息,可是通过郭老师布置的这个任务,我学到了很多,以前我只熟悉Altera的开发环境,现在,Xilinx的开发环境也掌握了,而且可以顺利的展开设计了,为大赛的下一步设计打下了良好的基础!相信在郭老师的指导下,我们一定能取得优异的成绩的。</SPAN></P>
<P> </P>
<P></P></TD></TR></TBODY>
<TBODY>
<TR>
<TD>
<DIV class=art_end style="FLOAT: right">评论 (<SPAN
id=totalcoment>7</SPAN>) | 阅读(261) </DIV></TD></TR>
<TR>
<TD>
<DIV
style="DISPLAY: inline; FONT-WEIGHT: 800; FONT-SIZE: 14px; WIDTH: 100%"><SPAN
class=art_title><A title=车载影音播放系统实现的条件
href="http://www.eefocus.com/myspace/blog/show.php?id=74979">上一篇</A></SPAN>
<SPAN class=art_title><A title=关于我的共享
href="http://www.eefocus.com/myspace/blog/show.php?id=75503">下一篇</A></SPAN>
</DIV></TD></TR></TBODY></TABLE></DIV></TD></TR>
<TR>
<TD height=30>
<DIV class=blog_comment align=center><!-- <span class="white_14cu">文章评论</span>
--><SPAN class=blue14>以下网友评论只代表其个人观点,不代表本网站的观点或立场</SPAN> </DIV>
<DIV class=blog_comment id=main_text>
<DIV style="MARGIN-TOP: 10px; MARGIN-BOTTOM: 10px" align=center><IMG
src="经过验证的可以在BASYS上跑的RISC8.files/loadingAnimation.gif"
align=middle><BR>数据加载中...... </DIV></DIV></TD></TR>
<TR>
<TD colSpan=2>
<DIV class=comment_box><A name=commentbox></A>
<DIV id=commentForm>
<FORM name=commentForm onsubmit="return false;" method=post><INPUT id=bid
type=hidden value=8492 name=bid> <INPUT id=id type=hidden value=75258
name=id>
<TABLE cellSpacing=2 cellPadding=0 width="92%" align=center border=0>
<TBODY></TBODY>
<TBODY>
<TR id=aNickname>
<TD><LABEL class=white_14cu for=nickname>称 呼:</LABEL></TD>
<TD><INPUT class=text id=nickname size=30 value=网友 name=nickname>
<SPAN title=此项必须填写 style="CURSOR: help">*</SPAN></TD></TR>
<TR>
<TD vAlign=top width="10%"><LABEL class=white_14cu
for=commentContent>评论内容:</LABEL></TD>
<TD><TEXTAREA class=text id=commentContent title=此项为必填,请不要填写非法字符,字符数最大不超过10000个中文字符! style="WIDTH: 95%" name=commentContent rows=8></TEXTAREA>
</TD></TR>
<TR>
<TD> </TD>
<TD><INPUT class=button-submit id=submintbt onclick=add_comment() type=submit value="发 表" name=submit>
(在使用IE浏览器下,如果系统长时间没有响应,您可以刷新页面,然后按ctrl+v将评论内容复制回来!) <!-- <span style="display:none">
<input type="checkbox" value="1" name="che" onclick="checkfree();"/> 匿名发表</span> --></TD></TR></TBODY></TABLE></FORM></DIV></DIV>
<SCRIPT language=javascript>
function add_comment(){
var nickname = getId( "nickname" );
var commentContent = getId( "commentContent" );
var itemid = getId( "id" );
var uid = 0;
var bid = getId( "bid" );
if( commentContent.value==''||commentContent.value.length>5000 ){
alert( "请填写评论内容,字符数不大于5000个字符" );
commentContent.focus();
return false;
}
if(navigator.userAgent.toLowerCase().indexOf('ie') > -1)
window.clipboardData.setData('text',commentContent.value );
getId( "submintbt" ).disabled = true;
var x = new Ajax( 'statusid', "HTML" );
var param = "action=addcomment";
param += "&nickname="+nickname.value;
param += "&itemid="+itemid.value;
param += "&bid="+bid.value;
param += "&commentContent="+commentContent.value;
param += "&uid="+uid;
x.post( "server.php",param, dealRs );
}
function dealRs(rs){
if( rs>0 ){
alert( "数据提交成功!" );
try{
totalcomment++;
getId( "totalcoment" ).innerHTML = totalcomment;
getId( "commentContent" ).value = "";
}catch(e){
init();
return true;
}
init();
}else{
alert( "数据提交失败!!!" );
}
getId( "submintbt" ).disabled = false;
}//end
</SCRIPT>
</TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD>
<DIV class=footer>
<DIV style="MARGIN-LEFT: 30px; WIDTH: 882px; PADDING-TOP: 8px"
align=center><A
href="http://www.eefocus.com/myspace/blog/show_75258.html#"
target=_blank>EEFOCUS BLOG意见反馈留言板</A> <A
href="http://www.eefocus.com/myspace/blog/show_75258.html#">不良信息反馈</A> 欢迎批评指正<BR><A
href="http://www.eefocus.com/content/service/introduce.php">关于我们</A> | <A
href="http://www.eefocus.com/content/service/hr.php">诚邀加盟</A> | <A
href="http://www.eefocus.com/content/service/">客户服务</A> | <A
href="http://www.eefocus.com/content/service/law.php">相关法律</A> | <A
href="http://www.eefocus.com/content/map.html">网站地图</A> | <A
href="http://www.eefocus.com/content/link.html">友情链接</A> | 服务信箱:<A
href="mailto:service@eefocus.com?subject=ç½ç«æå¡ä¸åé¦é®ä»¶">mailto:service@eefocus.com?subject=ç½ç«æå¡ä¸åé¦é®ä»¶</A><BR>©
2006 与非门科技信息咨询(北京)有限公司 All Rights
Reserved.</DIV></DIV></TD></TR></TBODY></TABLE>
<SCRIPT language=JavaScript src="经过验证的可以在BASYS上跑的RISC8.files/makejs.htm"
type=text/javascript></SCRIPT>
<SCRIPT src="经过验证的可以在BASYS上跑的RISC8.files/urchin.js" type=text/javascript>
</SCRIPT>
<SCRIPT type=text/javascript>
_uacct = "UA-1502657-1";
urchinTracker();
</SCRIPT>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -