湖南大学计组实验lab4 perflab
- 格式:pdf
- 大小:502.52 KB
- 文档页数:13
数字逻辑实验报告四实验题目多路复用器与比较器的设计与仿真实验目的熟悉QuartusⅡ仿真软件的基本操作,并用VHDL/Verilog语言或者逻辑图完成多路复用器与比较器的设计与仿真实验内容1.参照芯片74LS153的电路结构,用VHDL语言设计四选一多路复用器;2.从Maxplus中取7485器件(比较器)进行仿真与分析;用VHDL语言设计4位比较器,接着进行仿真与分析,电路逻辑结构参照芯片74x85。
实验步骤一)74153:4选1多路复用器(4 to 1 Multiplexer),又叫4选1数据选择器逻辑框图功能表Vhdllibrary ieee;use ieee.std_logic_1164.all;entity Multiplexer4_1 isport(G,A,B:in std_logic;C:in std_logic_vector(3 downto 0);Y:out std_logic);end Multiplexer4_1;architecture arc of Multiplexer4_1 isbeginprocess(A,B,G)beginif(G='1')then Y<='0';elseif(B='0' and A='0')then Y<=C(0);elsif(B='0' and A='1')then Y<=C(1);elsif(B='1' and A='0')then Y<=C(2);elseY<=C(3);end if;end if;end process;end arc;波形图二)取7485器件(比较器)进行仿真与分析1)创建逻辑图波形仿真:三)用VHDL语言设计4位比较器逻辑图功能表Vhdllibrary ieee;use ieee.std_logic_1164.all;entity compare4 isport(A,B:in std_logic_vector(3 downto 0);ALBI,AEBI,AGBI:in std_logic;ALBO,AEBO,AGBO:out std_logic);end compare4;architecture arc of compare4 isbeginprocess(A,B,ALBI,AEBI,AGBI)beginif(A(3)>B(3))then ALBO<='0';AEBO<='0';AGBO<='1';elsif(A(3)<B(3))then ALBO<='1';AEBO<='0';AGBO<='0';elseif(A(2)>B(2))then ALBO<='0';AEBO<='0';AGBO<='1';elsif(A(2)<B(2))then ALBO<='1';AEBO<='0';AGBO<='0';elseif(A(1)>B(1))then ALBO<='0';AEBO<='0';AGBO<='1';elsif(A(1)<B(1))then ALBO<='1';AEBO<='0';AGBO<='0';elseif(A(0)>B(0))then ALBO<='0';AEBO<='0';AGBO<='1';elsif(A(0)<B(0))then ALBO<='1';AEBO<='0';AGBO<='0';elseif(ALBI='1')then ALBO<='1';AEBO<='0';AGBO<='0';end if;if(AEBI='1')then ALBO<='0';AEBO<='1';AGBO<='0';end if;if(AGBI='1')then ALBO<='0';AEBO<='0';AGBO<='1';end if;end if;end if;end if;end if;end process;end arc;仿真波形:实验总结:通过这次实验我学会了Quartus II软件的基本操作,了解了各种设计方法(原理图设计、文本设计、波形设计)。
2024年计算机实验报告总结2024年,计算机科学与技术领域出现了一系列重大突破与进展。
在这一年的计算机实验中,我们团队致力于研究与开发新的算法、平台和技术,以推动计算机科学的发展。
以下是我们在2024年计算机实验中的主要研究内容及结果总结。
一、人工智能与机器学习领域的实验2024年,人工智能与机器学习领域仍然是计算机科学的热点研究领域。
在我们的实验中,我们尝试了多种新的深度学习算法和模型。
首先,我们成功开发了一种基于深度学习的图像识别算法。
通过使用大规模数据集进行训练,我们的算法在不同场景和光照条件下都具有较好的图像识别能力。
我们将该算法应用于实际场景中,如智能驾驶和工业自动化等领域,取得了显著的成果。
其次,我们在生成模型方面进行了深入研究。
通过引入生成对抗网络(GAN)和变分自编码器(VAE)等技术,我们成功开发了一种高质量的图像生成模型。
该模型不仅可以生成逼真的图像,还能应用于图像修复和图像合成等任务。
另外,我们还研究了强化学习领域的实验。
通过开发智能体和环境之间的交互模型,我们成功实现了一个自适应控制系统。
在不同环境和任务下,该系统能够根据奖励机制调整自身的行为,实现高效的控制与决策。
总的来说,我们在人工智能与机器学习领域的实验中取得了一系列重要的成果。
这些成果不仅在学术上具有突破性的意义,而且在实际应用中也有着广泛的应用前景。
二、数据科学与大数据处理领域的实验随着互联网和物联网技术的快速发展,数据科学与大数据处理领域的重要性日益凸显。
在2024年的实验中,我们团队致力于研究高效的数据存储、处理和分析算法。
首先,我们针对大规模数据集的存储问题进行了研究。
通过开发一种分布式文件系统,我们成功实现了对PB级数据存储和管理的能力。
该系统不仅具有高可靠性和高性能,还能灵活地应对不同数据类型和数据访问模式。
其次,为了提高大数据处理速度,我们研究了一种基于Spark框架的并行计算算法。
通过将数据划分为多个小任务,并使用分布式计算资源进行处理,我们实现了对海量数据的快速处理和分析。
课程实验报告课程名称:计算机组成与结构实验项目名称:perflab-handout专业班级:姓名:学号:指导教师:杨科华完成时间:2016 年 5 月27 日信息科学与工程学院实验题目:perflab程序性能调优实验目的:理解编译器,学习程序优化,从优化程序代码和程序执行速度两方面着手。
实验要求:本次实验,要求针对每个函数、每个人均至少写出3种优化版本、并根据driver报告的结果进行性能分析实验环境: ubuntu-15.10、 x32系统、VMware workstation实验内容及操作步骤:将下载下来的kernels.c 中的rotate、smooth 函数进行优化。
rotate函数的作用是将图像逆时针旋转90°,smooth函数的作用是对于图像中的每一个像素点,取它和周围的像素点的平均值,让图片变得模糊。
下面对代码进行逐一优化。
源代码的CPE测试:1.Naive_rotate1)源代码:char naive_rotate_descr[] = "naive_rotate: Naive baseline implementation";void naive_rotate(int dim, pixel *src, pixel *dst){int i, j;for (i = 0; i < dim; i++)for (j = 0; j < dim; j++)dst[RIDX(dim-1-j, i, dim)] = src[RIDX(i, j, dim)];}2)分析:这段代码的作用就是用一个双层循环将所有的像素进行行列调位、导致整幅图画进行了 90 度旋转。
然而分析一下代码就能发现一个十分简单的优化方法:因为在最内层循环中,j的值每次都会改变,所以每执行一次赋值就要计算一次dim-1-j,算多了自然就慢了。
我们可以利用简单的数学技巧改写公式,将赋值语句改成dst[RIDX(i, j, dim)] = src[RIDX(j, dim-i-1, dim)]; 这样就不用每次都计算了。
HUNAN UNIVERSITY无线传感器网络目:DV-hop定位算法______________生:__________________________号: ______________________完成时间: 2014. 5. 121一、实验目的1、掌握mat lab X具的使用方法。
2、了解DV-hop算法原理,熟悉DV-hop算法代码,分析DV-hop算法实验结果。
二、实验原理DV-hop算法概述(一)基本思想:3、计算位置节点与犀鸟节点的最小跳数4、估算平均每跳的距离,利用最小跳数乘以平均每条的距离,得到未知节点与信标节点之间的估计距离5、利用三遍测量法或者极大似然估计法计算未知节点的坐标(二)定位过程1、信标节点向邻居节点广播自身未知信息的分组,其中包括跳数字段,初始化为02、接受节点记录具有到每条信标节点的最小跳数,忽略来自一个信标节点的较大跳数的分组,然后将跳数数值加1,并转发给邻居节点3、网络中所有节点能够记录下到每个信标节点最小跳数(三)计算未知节点与信标节点的实际跳段距离1、每个信标节点根据记录的其他信标节点的位置信息和相距跳数,估Ejs-x/'+acTj「HopSi二6严——=U~~;——: :算平均每跳距离■•■■■•"":"■ 5 7"•"■•" •2、信标节点将计算的每条平均距离用带有生存期字段的分组广播至网络中,未知节点仅仅记录接受到的第一个每跳平均距离,并转发给邻居节点3、未知节点接受到平均每跳距离后,根据记录的跳数,计算到每个信标节点的跳段距离(四)利用三边测量法或者极大似然估计法计算自身位置4、位置节点利用第二阶段中记录的到每个信标节点的跳段距离,利用三边测量法或者极大似然估计法计算自身坐标三、实验容和步骤DV-hop代码如下:function DV_hop()load '・・/Deploy Nodes/coordinates・mat r:load 1.. /Topology Of WSN/neighbor. mat1:if al 1 nodes・anchors n〈3disp('锚节点少于3个,DV-hop算法无法执行');return;end% ------------------------- 最短路经算法计算节点间跳数shortest path=neighbor matrix;shortest path=shortest path+eye(all nodes.nodes n)*2; shortest path (shortest path==0)-inf;shortest path (shortest path==2)=0;for k=l:all nodes.nodes_nfor i=l:all…nodes・nodes_nfor j=l:all_ nodes .nodes nifshortest path(i t k)+shortest. path(k.j)<shortest path(i・ j)%min(h(i,j),h(i,k)+h(k, j)) shortestpath(i,j)=shortest path(i,k)+shortest path(k,j):endendendendif length(find(shortest path==inf))^=0disp('网络不连通...需要划分连通子图...这里没有考虑这种情况');return;end% 求每个信标节点的校正值anchor to anchor 二shortest path(l:all nodes .anchors n t hall nodes .anchors n): for i=l:all nodes.anchors nhopsize(i)=sum(sqrt(sum(transpose((repmat(all nodes・ true(i,:),al1 nodes・ anchors n,l)-all nodes・true(1:all nodes・3nchors_n,:))・*2))))/sum(anchor to anchor(i t:) );end% ---------- ----------- 每个未知节点开始计算自己的位置for i=al1 nodes・anchors n+1:nl1 nodes.nodes nobtained hops i ze^hops i ze(f i nd(shortest path(i,hall nodes .anchors n)==min(short est path(i, hall, nodes, anchors n))))川未知节点从最近的信标荻得校正值,可能到几个锚节点的跳数相同的情况unknown to anchors dist=transpose(obtained hopsize(1)*shortest path(i f l:all nod es. anchors n));%计算到锚节点的距离二跳数*校正值% 最小一乘法A=2*(al1 nodes・ estimated(l:all nodes・ anchors n~l,:)-repmat(al 1 nodes・ estimated( all nodes・anchors n,:),all nodes・anchors n一1,1)); anchors1ocation_square=transpose(sum(transpose(all nodes・estinuited(l:all nodes .anchors_n,:)・”2)));dist square二unknown to anchors dist・ 2;b=anchors location squared:all nodes .anchors n~l)-anchors location square (al 1 nodes .anchorsn)一dist squared:all nodes .anchors n一l)+dist square(all nodes・snc hors n);all nodes・ estimated(i,:)=transpose(A\b);al1_nodes・ anc_flag(i)=2;endsave '・・/Localization Error/result.mat' all^nodes comm ,r; end通信半径:200m锚节点的通信半径:200m通信模型:Regular Model网络的平均连通度为:31. 3667网络的邻居锚节点平均数目为:6. 5一共300个节点:60个锚节点,240个未知节点,0个不能被定位的未知节点定位误差为0.30127这里在计算节点与锚节点距离时使用跳数相乘距离修正值,实现了对基础DV-hop算法的改进,因此增大通信距离是不能增大算法误差的通信半径:400m锚节点的通信半径:400m通信模型:Regular Model 网络的平均连通度为:100. 6533网络的邻居锚节点平均数目为:19. 39一共300个节点:60个锚节点,240个未知节点,0个不能被定位的未知节点定位误差为0. 26588但是此算法增大锚节点密度对误差减小基本没有意义通信半径:200m锚节点的通信半径:200m通信模型:Regular Model网络的平均连通度为:31.9网络的邻居锚节点平均数目为:18. 7833一共300个节点:180个锚节点,120个未知节点,0个不能被定位的未知节点定位误差为0.31443增大锚节点通信距离会显著增大误差,这是因为修正值修正到平均距离,但是锚节点通信距离与该值偏离很大通信半径:200m锚节点的通信半径:400m通信模型:Regular Model未知节点能侦听到的锚节点平均数目为:20. 7417未知节点通信区域的未知节点平均数目为:25. 4333一共300个节点:60个锚节点,240个未知节点,0个不能被定位的未知节点定位误差为0. 63806不规则的通信也会严重影响这种基于跳数估计距离的定位算法通信半径:200m锚节点的通信半径:200m通信模型:DOI ModelDOI 二0.015网络的平均连通度为:41.33网络的邻居锚节点平均数目为:7. 98一共300个节点:60个锚节点,240个未知节点,0个不能被定位的未知节点定位误差为1.0595算法改进:要设计更加合理的估计跳数距离的方法,克服通信模型不规则和通信距离带来的影响。
实验一线性极化法测定金属Fe在稀H2SO4中的腐蚀速度一、基本要求1.掌握动电位扫描法测定电极极化曲线的原理和实验技术。
通过测定Fe在0.1M 硫酸溶液中的极化曲线,求算Fe的自腐蚀电位,自腐蚀电流。
2.讨论极化曲线在金属腐蚀与防护中的应用。
二、实验原理当金属浸于腐蚀介质时,如果金属的平衡电极电位低于介质中去极化剂(如H+或氧分子)的平衡电极电位,则金属和介质构成一个腐蚀体系,称为共轭体系。
此时,金属发生阳极溶解,去极化剂发生还原。
以金属铁在盐酸体系中为例:阳极反应: Fe-2e=Fe2+阴极反应: H++2e=H2阳极反应的电流密度以 ia 表示,阴极反应的速度以 ik表示,当体系达到稳定时,即金属处于自腐蚀状态时,ia =ik=icorr(icorr为腐蚀电流),体系不会有净的电流积累,体系处于一稳定电位cϕ。
根据法拉第定律,体系通过的电流和电极上发生反应的物质的量存在严格的一一对应关系,故可阴阳极反应的电流密度代表阴阳极反应的腐蚀速度。
金属自腐蚀状态的腐蚀电流密度即代表了金属的腐蚀速度。
因此求得金属腐蚀电流即代表了金属的腐蚀速度。
金属处于自腐蚀状态时,外测电流为零。
极化电位与极化电流或极化电流密度之间的关系曲线称为极化曲线。
极化曲线在金属腐蚀研究中有重要的意义。
测量腐蚀体系的阴阳极极化曲线可以揭示腐蚀的控制因素及缓蚀剂的作用机理。
在腐蚀点位附近积弱极化区的举行集会测量可以可以快速求得腐蚀速度。
还可以通过极化曲线的测量获得阴极保护和阳极保护的主要参数。
在活化极化控制下,金属腐蚀速度的一般方程式为:其中 I为外测电流密度,ia 为金属阳极溶解的速度,ik为去极化剂还原的速度,βa 、βk分别为金属阳极溶解的自然对数塔菲尔斜率和去极化剂还原的自然对数)]ex p()[ex p(kcaccorrkaiiiIβϕϕβϕϕ---=-=塔菲尔斜率。
若以十为底的对数,则表示为b a 、b k 。
这就是腐蚀金属电极的极化曲线方程式,令 ∆E 称为腐蚀金属电极的极化值,∆E =0时,I =0;∆E>0时,是阳极极化,I>0,体系通过阳极电流。
虚拟内存实习报告目录内容一:总体概述 (3)内容二:任务完成情况 (3)任务完成列表(Y/N) (3)具体Exercise的完成情况 (3)内容三:遇到的困难以及解决方法 (23)内容四:收获及感想 (24)内容五:对课程的意见和建议 (24)内容六:参考文献 (24)内容一:总体概述实习的主要内容是了解和改进nachos存储管理相关实现,主要分为三个部分。
第一部分的主要内容是实现TLB相关异常处理和置换算法,第二部分的主要内容是实现全局内存管理机制,使得nachos内存可以同时存在复数线程,第三部分的主要内容是实现程序运行时载入所需页面。
扩展部分主要是增加线程挂起状态以及实现倒排页表。
内容二:任务完成情况任务完成列表(Y/N)Exercise1 Exercise2 Exercise3 Exercise4 Exercise5 Exercise6 Exercise7 Y Y Y Y Y Y Y Challenge1 Challenge2Y Y具体Exercise的完成情况一、TLB异常处理目前,Nachos系统对于内存的管理是基于软件模拟的TLB机制。
其工作原理、异常处理、替换算法等方面,与分页式内存管理非常相像。
Exercise1 源代码阅读阅读code/userprog/,着重理解nachos执行用户程序的过程,以及该过程中与内存管理相关的要点。
阅读code/machine目录下的machine.h(cc),translate.h(cc)文件和code/userprog目录下的exception.h(cc),理解当前Nachos系统所采用的TLB 机制和地址转换机制(1)用户程序执行过程userprog/定义函数StartProcess主要功能是实现用户程序启动,如果我们希望执行test中的用户程序,那么我们进入userprog,执行./nachos -x ../test/(用户程序),通过识别-x参数,nachos调用StartProcess执行用户程序(具体实现在threads/)StartProcess的基本流程是,通过文件系统定义的OpenFile打开相关文件,通过AddrSpace的构造函数建立用户空间,装载文件,通过AddrSpace的InitRegisters函数初始化用户寄存器,通过AddrSpace的RestoreState函数装载页表,通过machine的Run函数运行用户程序AddrSpace的构造函数实现在userprog/,主要流程是,获取文件头,大小端做适宜转换,通过文件头计算文件所需空间,包括代码段,初始化数据段,未初始化数据段,栈空间4个部分,通过文件所需空间计算出文件所需的虚拟页面数量,创建用户空间页表,指示了第i个虚拟页对应第i个物理页,将用户程序的正文段和相关数据依次调入内存AddrSpace的InitRegisters函数实现在userprog/,主要流程是初始化普通寄存器(初始化为0),初始化当前指令指针(PC,初始化为0),初始化下一条指令指针(初始化为4),初始化栈指针(地址空间尾部适当前移)AddrSpace的RestoreState函数实现在userprog/,主要流程是将页表装载到machine类中,准备执行用户程序machine的Run函数实现在machine/,基本流程是通过OneInstruction函数完成指令译码和执行,通过interrupt的OneTick函数使得时钟前进machine的Run函数通过machine的ReadMem函数读内存数据,通过machine 的WriteMem函数写内存数据,两个函数的实现在machine/,核心是translate函数,translate函数实现在machine/,主要功能是实现虚拟地址到物理地址的转换,translate函数可能返回相应的错误,在这样的情况下,ReadMem函数/WriteMem函数调用RaiseException函数进行处理,RaiseException函数定义在machine/,基本流程是将错误信息存储在特定位置,调用ExceptionHandler函数处理不同的错误,ExceptionHandler 函数实现在userprog/,主要流程是根据错误信息处理不同错误。
专利名称:包埋药物阿霉素的纳米颗粒及其制备方法和应用专利类型:发明专利
发明人:王柯敏,海罗,何晓晓,倪晓琪,石慧,羊小海
申请号:CN201010120268.0
申请日:20100309
公开号:CN101785759A
公开日:
20100728
专利内容由知识产权出版社提供
摘要:本发明属于复合医药材料及其制备和应用的技术领域,具体公开了一种包埋药物阿霉素的纳米颗粒,其为一外壳包埋内核的核壳型结构,内核为包埋的药物阿霉素,外壳用的材料为二氧化硅;该纳米颗粒的制备方法为先将环己烷、表面活性剂和正己醇混匀,向混匀后的混合液中加入氟化钠溶液形成反相微乳液;向其中加入阿霉素和正硅酸乙酯,反应得到包埋阿霉素的纳米颗粒微乳液体系;向微乳液体系中加入含功能基团的硅烷化试剂,搅拌反应,加入乙醇破乳,离心后制得修饰功能基团的包埋药物阿霉素的纳米颗粒。
本发明的包埋阿霉素的纳米颗粒具有稳定性好、生物相容性好、缓释时间长、载药量大、药物包裹效率高等优点,在肿瘤成像及治疗领域具有应用前景。
申请人:湖南大学
地址:410082 湖南省长沙市河西岳麓山湖南大学化学生物传感与计量学国家重点实验室
国籍:CN
代理机构:湖南兆弘专利事务所
更多信息请下载全文后查看。
课程名称:计算机组成与结构
实验项目名称:perflab
专业班级:
姓名:
学号:
指导教师:
完成时间:2016 年 5 月24 日
信息科学与工程学院
考虑函数的作用,我在第六次小班讨论课上作了分析,所以就引用当时ppt里的内容来分析函数功能:
Pixel是什么?RIDX是什么?
->寻找头文件defs.h(意为:解释,解说)
很容易看出来,这个rotate函数是对一个dim*dim大小的方块作逆时针旋转90度的操作,在这个函数里,每一次操作都是一个单独的“读source”——“写到destination”,的操作,而由于对读source的操作是步长为1的按行读取,因而cache命中率较高,而对于写到destination中的操作是步长为dim的按列读取,因而cache命中率较低,从这个角度考虑,可以交换内外循环的次序进行优化,优先考虑写的操作。