- 博客(31)
- 收藏
- 关注
原创 HNU-2023电路与电子学-CPU综合设计
答:对于本次实验,需要学会如何使用 Quartus 编写具有对应功能的模块与元件、掌握如何组装并设计简易的模型机,同时需要了解如何使用在 FPGA 实验板上验证功能是否正确。
2024-09-10 13:11:08
4189
9
原创 HNU-2023电路与电子学-实验4
答:需要掌握的理论:需要了解模型机中 ir、pc、通用寄存器组、sm、psw 以及寄存器 ram的基本结构和功能,需要掌握 quartus 的使用以及使用 Verilog 语言进行程序的编写,以及使用 quaartus 进行电路设计。遇到的困难:本次实验中 ram 的设计与先前多个实验不同,不是通过 Verilog 语言实现的,一开始有点无从下手,后来通过老师的耐心答疑最后终于理解了指导书的内容并顺利完成设计。
2024-09-09 16:56:43
3233
原创 HNU-2023电路与电子学-实验3
答:选择 mova 指令,根据控制信号 SR1、SR0(即指令码 ir 的最后两位)将源寄存器 Rs的数据从通用寄存器 S 口输出,在 AC3~AC0 和 AU_EN 的控制下,经 AU 送入总线BUS,BUS 上的数据传送至通用寄存器的输入端;在 WE 和DR1、DR0 的控制下,时钟下降沿将输入端的数据写入目的寄存器 Rd。执行时sm_en、au_en、mux_s、reg_we 为 1,其他信号为 0。
2024-09-08 14:04:39
3533
原创 HNU-2023电路与电子学-实验2
从需要掌握的理论、遇到的困难、解决的办法以及经验教训等方面进行总结。答:需要掌握的理论:对于本实验的进行,需要基本了解模型机的内部结构和工作原理,同时需要熟悉译码器和 ALU 的工作原理,以及需要熟练使用 Verilog 语言进行电路程序的编写。遇到的困难:对 Quartus II 软件的使用不熟练,不了解功能仿真以及时序仿真的使用方法,通过与同学之间讨论以及积极向老师提问解决了该问题。经验教训:遇到不懂的问题一定要及时想办法解决,不要将问题积累,同时多使用仿真对电路进行检验。
2024-09-06 21:25:35
3949
1
原创 HNU-2023电路与电子学-实验1
电桥电路的设计原理:本电路用电压控制电阻来模拟实际情况的压控电阻,实际电路图如下图所示:并且有使用四个压控电阻的灵敏度最高:在 Multisim 中具体仿真实现:使用电压控制的电阻,用电压变化来模拟压力的变化,设置电阻值为 0.004185 欧/伏,根据公式换算可得:电桥输出电压 U5=0.00007215V2(V3、V4、V5)V2 为待测电压值。
2024-09-06 20:40:42
3196
原创 HNU-2024计算机系统-小班讨论8
本次是最后一次讨论课,由于临近考试周,这段时间的任务会比较重,希望大家能够合理安排时间,圆满地结束这门课程。本次讨论课的选题围绕CSAPP的最后一部分:进程之间的信号,选题内容依旧开放性较强。
2024-08-15 11:30:07
556
原创 HNU-2024计算机系统-小班讨论7
本次小班课的选题主要围绕CSAPP教材中的链接章节,通过实践使用readelf等工具可以加深对ELF文件内容的理解,对链接部分的理解有一定的帮助。
2024-08-15 11:29:32
241
原创 HNU-2024计算机系统-小班讨论6
本次讨论课的选题主要围绕着程序性能优化章节中的分支预测部分,我个人感觉这板块是CSAPP教材中最不好理解的部分,需要大家多看教材,多讨论分析。
2024-08-14 11:35:09
560
原创 HNU-2024计算机系统-小班讨论5
本次小班的选题依旧开放性很强,需要通过阅读老师发的pdf文档来完成相应的程序设计,从而实现矩阵乘法的高性能计算,通过本次讨论课的学习,同学们可以对程序性能优化有一个更加清楚的认识和理解。
2024-08-14 11:34:37
467
原创 HNU-2024计算机系统-小班讨论4
写在前面:本次的选题开放性较强,要求写出一个病毒文件,并且由于该程序文件的特殊性,基本上很难从网络或者利用AI来获取病毒程序,本文内容仅供参考。由于我能力有限,只能利用文件交互的代码来实现该程序,后续课程组的老师给出了一种汇编层面通过修改程序入口的方式来完成注入攻击,有兴趣的同学可以探讨一下。本文所有题目由全组同学共同完成,感谢每一位同学的支持与付出。选题二计算机病毒最重要的特点是能够自我复制和感染其他文件。小明决定用c语言写一个“病毒”,在编译运行后,会感染本目录下所有的.c文件,被感染的.c文件在
2024-08-13 12:14:03
941
原创 HNU-2024计算机系统-小班讨论3
本次的选题主要围绕浮点数的IEEE标准表示方法以及相应精度的分析,认真完成本次选题可以对浮点数在计算机中的存储形式有一个更深刻的理解,对IEEE标准的表示方法也更加熟练。
2024-08-12 12:11:35
2244
原创 HNU-2024计算机系统-小班讨论2
本次的选题侧重于数据/指令在计算机中的存储形式,通过这次讨论课的学习,计算机中一切皆比特的概念变得具象化,为后面的学习和理解打下基础。
2024-08-11 14:22:23
1410
原创 HNU-2024计算机系统-小班讨论1
计算机系统这门课程可以说是“i人噩梦”,分数占比巨高的课堂表现和小班讨论、活泼开朗的老师,使得每一个学生都得主动积极参与课堂活动。不过虽然刚开始可能会有些不适应,但是积极主动地学习可以有更多的收获,老师们也都很好很可爱,相信大家会在这门课上度过大学四年都难忘的课程学习!小tips:目标冲击高分的同学在小班讨论上多主动补充和发言,认真准备每一节小班课。
2024-08-10 14:05:15
1730
原创 HNU-2023电路与电子学-小班讨论4
这是第四次讨论课,也是最后一次小班讨论,侧重于最后一部分学习的内容–时序电路,与考试的关联较大,值得认真对待。
2024-08-09 14:03:37
1610
原创 HNU-2023电路与电子学-小班讨论3
这是第三次讨论课,也就是第二次讨论题,侧重于数字电路的相关编码原型机设计(课程实验)的问题,难度适中,数字电路部分涉及很多生活中常见的例子,认真完成可以增加对数电的相关理解。
2024-07-12 16:05:46
3319
原创 HNU-2024操作系统实验-Lab9-Shell
理解Shell程序的原理、底层逻辑和Shell依赖的数据结构等在操作系统内核MiniEuler上实现一个可用的Shell程序能够根据相关原理编写一条可用的Shell指令。
2024-07-11 17:17:44
917
1
原创 HNU-2024操作系统实验-Lab8-内存管理
此处定义了dist和cpu的基址,GIC_DIST_BASE 和 GIC_CPU_BASE 的高位多少个f与MMU的配置有关,此处设置为8个f更加清楚在具体的armv8架构中,页表是如何将虚拟地址映射到物理地址的,这其中涉及多个寄存器的相互配合。能了解这多个寄存器的作用,在依托手册的基础上正确的配置寄存器以实现内存管理。了解了多种页表映射方案,如块映射,多级页表映射等。
2024-07-11 16:07:20
1065
原创 HNU-2024操作系统实验-Lab7-信号量与同步
这一部分主要是定义了一系列检查等辅助函数,其中OsSemPostErrorCheck函数和OsSemPendParaCheck函数用于检查post操作和pend操作是否有效,接着对其中较为复杂的函数进行分析:OsSemPendListPut函数:该函数将当前运行任务挂接到信号量的等待链表上,首先,此函数将当前运行的任务从就绪列表中移除,然后根据信号量的等待模式(优先级或FIFO),将任务添加到信号量的等待列表中。
2024-07-10 16:43:19
1692
原创 HNU-2024操作系统实验-Lab6-任务调度
ListLowLevelAdd:本函数用于在两个已存在的节点prev和next之间插入一个新的节点newNode。ListAdd:本函数将新的节点newNode添加到链表的头部,即listObject节点的后面。ListTailAdd:此函数将新的节点newNode添加到链表的尾部,即listObject节点的前面。ListLowLevelDelete:这是一个删除函数,用于删除prevNode和nextNode之间的节点。ListDelete:此函数删除指定的节点node,并将它从链表中移除。
2024-07-09 19:49:09
1355
原创 HNU-2024操作系统实验-Lab5-时钟中断Tick
OsGicInitCpuInterface:首先通过向GICD_CTLR(分发器控制寄存器)和GICC_CTLR(CPU接口控制寄存器)写入禁用值(GICD_CTLR_DISABLE和GICC_CTLR_DISABLE),然后设置CPU接口的优先级掩码寄存器(GICC_PMR)和二进制点寄存器(GICC_BPR)。GICC_PMR用于设置接收中断的优先级阈值,只有高于这个阈值的中断才会被处理。GICC_BPR用于分割优先级字段,确定哪些中断有资格打断当前正在处理的中断。
2024-07-08 16:37:02
2237
1
原创 HNU-2023电路与电子学-小班讨论2
在第一次小班讨论中,老师介绍了使用Multisim软件搭建电路并进行仿真模拟,第二、三、四次小班课则是根据老师提前给出的题目制作ppt,进行讲解和分析。第二次讨论课的题目主要涉及前段课程电路、模电的知识以及实验,部分题目源于教材原题,整体难度适中,但是题量较大,可能需要花费较多时间。
2024-07-03 13:30:37
2731
原创 HNU-2024计算机系统实验-BombLab
在刚开始做这个实验的时候,对汇编代码有些不太熟悉,尤其是read_six_numbers函数中调用的sscanf函数,平时学习过程中也少有此函数的使用,为了搞清楚这个函数的使用方法和规则,查阅了较多的资料,以及在自己本地的编译环境多次尝试,最后终于熟练掌握sscanf的使用;作为转专业学生,未修《数据结构》课程,对于链表以及二叉树的理解不太深刻,花费较多时间自学理解了相关的搜索函数以及此类复杂数据结构在内存中的存储形式,最终顺利解决第四题、第六题、隐藏题这三道复杂数据结构题;
2024-07-02 10:24:51
2634
4
原创 HNU-2024计算机系统实验-BufLab
这是2024学年春季学期计算机系统的最后一个实验,以教材中缓冲区攻击的栈溢出攻击为基础,实现一系列的缓冲区攻击,难度依次上升,但是有了BombLab实验的基础,这个实验的汇编代码就理解就简单很多,没有复杂数据结构,也没有复杂的函数递归,但是这个实验覆盖了栈处理的多种情况,对于函数栈帧的理解有很大帮助。
2024-06-30 09:34:41
989
原创 HNU-2024计算机系统实验-DataLab
这个实验目的在于补全所有函数,使其能够实现题意要求的功能,实验整体被分为两部分,一部分是整型,另一部分是浮点数,整型主要考察的是对位运算的相关处理和算法,浮点数部分主要考察的是对IEEE标准下浮点数表达方式的理解。强烈建议认真完成浮点数相关的函数补充(当然整型相关也要认真做),可以很好地加深对IEEE标准的理解,对将来的学习/考试有很大帮助。一、实验项目一1.1 项目名称DataLab实验1.2 实验目的1.加强同学对位运算的理解和运用2.加深同学对IEEE标准下浮点数表示方法的理解。
2024-06-29 21:23:40
324
原创 HNU-2024计算机系统实验-VSPM1.0
1.在第一个任务中,由于Virtual Box中自带java的jdk版本过低导致无法运行vspm原型机,后通过使用wsl2来代替虚拟机并安装jdk21的java将问题顺利解决(因为在VB上实在装不上,所以临时换虚拟机跑路了);2.在第二个任务中未遇到问题。
2024-06-29 21:09:19
2593
4
原创 HNU-2023电子测试平台与工具1-数字密码锁
Mux4_3_1(3 选 1 多路复用器):接受Counter4传来的信号,产生段选信号从而显示不同的数字,根据sel信号的输入来决定输出信号,可以 同时输出三路数据和Counter4的信号,从而控制三路四位数据的选择输出。2.调慢时钟输入,在时序仿真的情况下,p[1]和p[0]两个led引脚的发光规律呈现周期性变化,随着时钟上升q[1..0]的输出表现为:(0,0) ->(0,1)->(1,0)->(1,1)->(0,0)往复循环。设计思路:设计出发点:需要改进显示 6,9 以及 a-f 的情况。
2024-06-26 19:36:05
1125
原创 HNU-2024操作系统实验-Lab3-设备树
因为实验三是选做,不计入成绩,考虑到时间紧急(考试+小班+实验),就没有写这个实验,有兴趣的同学可以自行完成。
2024-06-26 19:07:36
318
2
原创 HNU-2024操作系统实验-Lab4-异常处理
此处先取出ESR系统寄存器中的高六位,表示异常类型,然后取出寄存器x0、x8的值,并打印出相应的参数,表明顺利完成系统调用。
2024-06-25 12:08:20
518
原创 HNU-2024操作系统实验-Lab2-Hello MiniEuler
1.理解操作系统与硬件的接口方法2.实现一个可打印字符的宏(非系统调用),用于后续的调试和开发2.通过QEMU导出设备树并转成可读格式virt.dtb转换后生成的virt.dts中可找到如下内容:由上可以看出,virt机器包含有pl011的设备,该设备的寄存器在0x9000000开始处。pl011实际上是一个UART设备,即串口。可以看到virt选择使用pl011作为标准输出,这是因为与PC不同,大部分嵌入式系统默认情况下并不包含VGA设备。此处定义了pl011设备的基址寄存器地址,以及Da
2024-06-24 17:40:38
1468
原创 HNU-2024操作系统实验-Lab1-环境配置
从2024年开始,HNU信息院计科和智能专业统一使用李老师基于UniProton编写的新实验,一共有八个实验,如果仅是按照指导书的内容将实验跑通还是比较容易的(第一个实验除外),而对于想要在将来走系统方向的同学,或者遇上比较苛刻的助教,需要将整个实验的代码完全看懂,那就是一件任务量很大的事情了。一、实验目的1.安装交叉工具链(aarch64)以及安装QEMU模拟器2.创建裸机(Bare Metal)程序3.构件工程4.完成调试支持5.建立自动化脚本二、实验过程。
2024-06-24 16:02:29
2926
7
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人