南京邮电大学软件设计实验报告

合集下载

南邮软件设计6 _13

南邮软件设计6 _13

通信与信息工程学院2013 /2014 学年第二学期软件设计实验报告模块名称EDA-VHDL软件设计专业电子信息工程学生班级B110学生学号学生姓名指导教师梅中辉报告内容实验目的:1.使学生全面了解如何应用该硬件描述语言进行高速集成电路设计; 2.通过软件使用、设计与仿真环节使学生熟悉EDA-VHDL 开发环境;3. 通过对基本题、综合题的设计实践,使学生掌握硬件系统设计方法(自底向上或自顶向下),熟悉VHDL 语言三种设计风格,并且培养学生应用VHDL 语言解决实际问题的能力。

实验设备:1:微型计算机 2:quartus II 开发软件实验课题:1、D 触发器一、实验内容:设计一个D 型触发器,输入CK (时钟信号, ↑表示上升沿时刻),D,输出Q ,真值表如图。

二、原理图三、功能分析Clear 端为0时,无论D 为何值,Q 置0。

当Clear 为1时,遇到输入时钟信号CK 上升沿时,Q=D 。

算法框图:四、时序仿真图结果分析:当clear 为0时,Q 端置0;clear 为1时,Q 在CK 上升沿处跳至与D 相等的值。

仿真结果与分析相同,结果正确。

五、调试过程与问题这个实验是第一次使用quartus II 开发软件和VHDL 语言,虽然是一个简单的问题,但是也花费了不少时间。

首先顶层实体名称必须与设计顶层文件的文件名一致,与VHDL 设计中的顶层实体名一致。

具体做法是Assignments 中Settings 里General 标签中的 Top-level entity 要与VHDL 程序中ENTITY 后面的文件名一致。

不然程序无法编译,这个问题一开始也是困扰了很久的。

成功编译程序之后,一开始不知道如何设置仿真的波形,通过网上搜索和翻阅一些参考书,花了一些时间之后终于找到了波形仿真相关按钮的位置、并掌握了波形仿真的步骤。

时序仿真成功后,通过分析时序图发现,当clear 端为0时,只有遇到CK 上升沿Q 端才会置0,与题目要求不符。

南京邮电大学matlab软件设计(超详细)doc综述

南京邮电大学matlab软件设计(超详细)doc综述

南京邮电大学通信学院软件课程设计实验报告模块名称:___MATLAB软件设计专业班级:__通信工程姓名:____ ____学号:___实验日期:2013年 6 月 17—28日实验报告日期: 2013 年 7 月 1 日一、要求练习的实验部分1.在时间区间 [0,10]中,绘出t e y t 2cos 15.0--=曲线。

程序:t=0:0.1:10;y=1-exp((-0.5)*t).*cos(2*t);plot(t,y,'r-');shg结果:2. 写出生成如图E2-1所示波形的MA TLAB 脚本M 文件。

图中虚线为正弦波,要求它的负半波被置零,且在23处被削顶。

程序:t=linspace(0,3*pi,500);y=sin(t);a=sin(pi/3);z=(y>=0).*y;z=(y>=a).*a+(y<a).*z;plot(t,y,':r');hold on;plot(t,z,'b-')xlabel('t'),ylabel('z=f(t)'),title('逐段解析函数')legend('y=sin(t)','z=f(t)',4),hold off结果:3. 令⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321A ,运行 [U,S,V]=svd(A);tol=S(1,1)*3*eps; 然后回答以下问题: (1)sum(diag(S)>tol) - rank(A) 是多少 ? (2)S(1,1) - norm(A) = 0 是多少 ? (3)sqrt(sum(diag(S*S))) - norm(A,'fro') 的结果是什么 ? (4)S(1,1)/S(3,3) - cond(A) 的结果是什么 ? (5)S(1,1)*S(2,2)*S(3,3) - det(A) < tol 的运行结果是什么? (6)V(:,1)'*null(A) 得到什么结果 ? (7)abs(A*null(A)) < tol 得到什么结果 ? (8) U(:,1:2) = = orth(A) 的运行结果是什么 ?程序:clear;clc;disp('设 A=[1,2,3;4,5,6;7,8,9],得')A=[1,2,3;4,5,6;7,8,9] %一个3*3矩阵disp('设 [U,S,V]=svd(A),得')[U,S,V]=svd(A) %奇异值分解(SVD)USV:U m*m酉矩阵 V n*n酉矩阵 S 对角阵disp('设 tol=S(1,1)*3*eps,得')tol=S(1,1)*3*epsdisp('设 a=sum(diag(S)>tol) - rank(A),求 a')a=sum(diag(S)>tol) - rank(A)disp('设 b=S(1,1) - norm(A),求 b')b=S(1,1) - norm(A)disp('设 c=sqrt(sum(diag(S*S))) - norm(A, fro ),求 c')c=sqrt(sum(diag(S*S))) - norm(A,'fro')disp('设 d=S(1,1)/S(3,3) - cond(A),求 d')d=S(1,1)/S(3,3) - cond(A)disp('设 e=S(1,1)*S(2,2)*S(3,3) - det(A) < tol ,求 e')e=S(1,1)*S(2,2)*S(3,3) - det(A) < toldisp('设 f=V(:,1) *null(A),求 f')f=V(:,1)'*null(A)disp('设 g=abs(A*null(A)) < tol,求 g')g=abs(A*null(A)) < toldisp('设 h=U(:,1:2) == orth(A),求 h')h=U(:,1:2) == orth(A)结果:设 A=[1,2,3;4,5,6;7,8,9],得A =1 2 34 5 67 8 9设 [U,S,V]=svd(A),得U =-0.2148 0.8872 0.4082-0.5206 0.2496 -0.8165-0.8263 -0.3879 0.4082S =16.8481 0 00 1.0684 00 0 0.0000V =-0.4797 -0.7767 -0.4082-0.5724 -0.0757 0.8165-0.6651 0.6253 -0.4082设 tol=S(1,1)*3*eps,得tol =1.1223e-014设 a=sum(diag(S)>tol) - rank(A),求 aa =设 b=S(1,1) - norm(A),求 bb =设 c=sqrt(sum(diag(S*S))) - norm(A, fro ),求 cc =3.5527e-015设 d=S(1,1)/S(3,3) - cond(A),求 dd =-8设 e=S(1,1)*S(2,2)*S(3,3) - det(A) < tol ,求 ee =1设 f=V(:,1) *null(A),求 ff =设 g=abs(A*null(A)) < tol ,求 gg =111设 h=U(:,1:2) == orth(A),求 hh =1 11 11 1结果分析:由上面的结果得出如下的题目答案:(1)sum(diag(S)>tol) - rank(A) 的结果是0;(2)S(1,1) - norm(A) = 0 的结果是0;(3)sqrt(sum(diag(S*S))) - norm(A,'fro') 的结果是3.5527e-015;(4)S(1,1)/S(3,3) - cond(A) 的结果是-8;(5)S(1,1)*S(2,2)*S(3,3) - det(A) < tol 的运行结果是1;(6)V(:,1)'*null(A)的结果是0;(7)abs(A*null(A)) < tol 的结果是111 ;(8)U(:,1:2)==orth(A)的运行结果是1 11 11 14. 求积分dt t x⎰0]sin[cos ,π20≤≤x 。

南邮 软件设计 数据库 实验详细过程及报告

南邮 软件设计 数据库 实验详细过程及报告

2012 /2013 学年第二学期软件设计实验报告模块名称数据库软件设计专业学生班级学生学号学生姓名指导教师报告内容(正文为宋体小四)实验一:内容:了解SQLserver和MySql的安装及使用;学会对企业管理器、查询分析器的使用;建立一个学生表、课程表及学生选课关联表,并用SQL语句进行相关插入、查询、删除等操作;步骤:1、打开企业管理器,建立一个名为10002434的数据库。

2.建立基本表:学生、课程和选课,写出DDL语句。

学生表:INSERT INTO Student V ALUES('10001','李勇','男','20','CS');INSERT INTO Student V ALUES('10002','刘晨','女','19','IS');INSERT INTO Student V ALUES('10003','王敏','女','18','MA');INSERT INTO Student V ALUES('10004','张立','男','18','IS');INSERT INTO Student V ALUES('10005','丁雨','女','19','MA');课程表INSERT INTO Course VALUES('1','数据库','5','4');INSERT INTO Course VALUES('2','数学','NULL','2');INSERT INTO Course VALUES('3','信息系统','1','4');INSERT INTO Course VALUES('4','操作系统','6','3');INSERT INTO Course VALUES('5','数据结构','7','4');INSERT INTO Course VALUES('6','数据处理','NULL','2');INSERT INTO Course VALUES('7','PASCAL语言','6','4');选课:INSERT INTO SC VALUES('10001','1','92'); INSERT INTO SC VALUES('10001','2','85'); INSERT INTO SC VALUES('10002','3','88'); INSERT INTO SC VALUES('10003','2','90');INSERT INTO SC VALUES('10003','5','75');(3)写出向数据库中插入和修改数据的DML语句delete from sc where sno='10001'insert into sc values('10005','4',79)实验二:内容:通过odbc 桥访问数据库。

南邮Java实验报告1-综合图形界面程序设计

南邮Java实验报告1-综合图形界面程序设计

南邮Java实验报告1-综合图形界面程序设计英文回答:Hello, I'm glad to help you with your Java lab report on comprehensive graphical user interface programming.In this report, I will provide a detailed description of the steps I took to create a graphical user interface (GUI) for a simple application. I will also include screenshots of the GUI and discuss the challenges I faced and how I overcame them.Step 1: Create a new Java project。

The first step was to create a new Java project in my preferred development environment. I used IntelliJ IDEA, but you can use any IDE that you are comfortable with.Step 2: Design the GUI。

Once I had created a new project, I began designing the GUI. I sketched out a rough draft on paper and then usedthe Swing library to create the actual GUI.The Swing library provides a set of components that can be used to create GUIs. These components include buttons, text fields, labels, and menus.Step 3: Add functionality to the GUI。

南京邮电大学软件设计实验报告

南京邮电大学软件设计实验报告

通信与信息工程学院2012/2013学年第二学期软件设计实验报告模块名称Visual C++专业广播电视工程学生班级B100117学生学号B10011714学生姓名王建明指导教师田炜题目一:P021E实验要求:设计一个简单的文本编辑器,该系统要求对一个文本文件中的容进行各种常规操作,例如:(1)编辑文本;(2)保存、打开指定位置的文本文件;(3)具有输入输出界面。

1、问题分析与方案设计。

本次程序主要为了让我们了解C语言中对于文件的一般操作。

文件是程序设计中的一个重要概念。

操作系统是以文件为单位对数据进行管理的,也就是说,如果想找外部介质上的数据,必须先按文件名找到所指定的文件,然后再从该文件中读取数据。

C语言把文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。

根据数据的组织形式,可分为ASCII文件和二进制文件。

ASCII文件又称文本(text)文件,他的每一个字节放一个ASCII代码,代表一个字符。

二进制文件是把存中的数据按其在存中的存储形式原样输出到磁盘上存放。

在文件系统中,“文件指针”是一个非常重要的概念,通常在进行关于文件操作的C程序时,会定义一个结构体变量的文件指针(FILE *fp),以便于C语言程序能够准确的对文件进行访问及操作。

本次实验程序包含了简单地对于文件的打开、插入、删除、查找、替换、显示、保存的操作,通过对于文件指针的运用以及各种文件指令的运用,基本达到了实验的要求。

在本次实验中,按照顺序程序的设计方法,加以熟练地运用C程序中主函数与一般函数之间的熟练调用,顺利的实现了实验要求的各种结果。

程序中用到的核心方法包括:文件的打开与关闭、文件的读写、文件的定位以及文件的出错检测等。

其中包括了fopen、fclose、fputc、fgetc、fread、fwrite、rewind、fseek、ftell和ferror等函数。

这些函数对算法的实现起了很大的作用具体算法实现过程如下图所示。

南邮软件设计报告

南邮软件设计报告

软件设计报告姓名:琳学号:B2015年5月16日~2015年6月16日目录第一章软件设计介绍 .................................................................................. 错误!未定义书签。

第二章软件开发平台简介........................................................................... 错误!未定义书签。

第三章软件设计的内容............................................................................... 错误!未定义书签。

分数统计软件(A1) ...................................................................... 错误!未定义书签。

设计题目及要求....................................................................................... 错误!未定义书签。

设计思想及程序流程框图....................................................................... 错误!未定义书签。

逻辑功能程序........................................................................................... 错误!未定义书签。

结果及完善方向....................................................................................... 错误!未定义书签。

南京邮电大学软件设计VHDL实验报告

南京邮电大学软件设计VHDL实验报告

南京邮电大学软件设计VHDL实验报告通信与信息工程学院 / 年第 2 学期软件设计实验报告模块名称VHDL 专业通信工程学生班级学生学号学生姓名指导教师设计题目基本课题:05. 2对4译码器综合课题:15. 奇偶校验器任务要求 1.基本课题:设计一个2对4译码器(输入:A B 输出:Y3 Y2 Y1 Y0),真值表如图2。

2. 奇偶校验器系统的功能是对八位二进制数据及其奇偶校验位的输入进行校验,输出正确的奇、偶校验位。

ODD_IN 与EVEN_IN 是控制奇校验和偶校验功能输入,IN0到IN7是七位数据及一位校验位数据输入,IN_READY 表示输入数据已经准备好,能够处理,当OUT_REQ 输入表示要求输出数据,CLK 端口用于接收时钟信号,支持系统的时钟上升沿同步。

当输出端口OUT_READY 输出信号有效时,表示输出数据已经准备好,能够为下级电路使用,ODD_OUT 与EVEN_OUT 用来输出正确的奇偶校验位。

上述控制端口均为高电平有效。

A B Y3 Y2 Y1 Y0 0 0 0 1 1 0 0 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 1 实验设备及软件1. 微型计算机 2. EDA-VHDL 开发软件同组人员学号及姓名参考文献 1.张顺兴《数字电路与系统设计》东南大学出版社 .82.苗丽华《VHDL数字电路设计教程》人民邮电出版社 .11 VHDL课程设计题目及要求(自编资料)3.VHDL课程设计题目及要求(自编资料)4.杨晓慧杨永健《基于FPGA的EDA/SOPC技术与VHDL》国防工业出版社 .7报告内容一.实验目的1.掌握组合逻辑中译码器电路的设计原理。

2.能利用VHDL语言设计一个2-4译码器。

二.实验器件1.微型计算机2.EDA-VHDL开发软件三.实验名称2-4译码器四.题目要求概述设计一个2对4译码器(输入:A B 输出:Y3 Y2 Y1 Y0),真值表如图五.系统分析○1.原理图:分析:EN=1,Z[0]=Z[1]=Z[2]=Z[3]=1;EN=0,Z[0]=!(!A!B),Z[1]=!(!AB),Z[2]=!(A!B),Z[3]=!AB○2.设计算法:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY XiaoLi IS --定义实体名称为XiaoLiPORT( EN:IN STD_LOGIC; --定义输入/输出端口a:IN STD_LOGIC_VECTOR(1 DOWNTO 0);y:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END XiaoLi;A B Y3 Y2 Y1 Y0100 11 00 11 1 1 01 1 0 11 0 1 10 1 1 1ARCHITECTURE dataxl OF XiaoLi ISBEGINPROCESS(EN,a)BEGINIF(EN='0')THENCASE a IS --用CASE语句进行译码WHEN "00"=>y<="1110";WHEN "01"=>y<="1101";WHEN "10"=>y<="1011";WHEN "11"=>y<="0111";WHEN OTHERS=>y<="0000";END CASE;ELSE y<="1111";END IF;END PROCESS;END dataxl;○3设计要点:1. 2-4译码器有一个使能端EN,低电平有效,因此要用到IF语句分情况处理,当EN=1时,输出全为逻辑1;当EN=0时,在使能下对输入进行译码输出。

南邮软件设计报告

南邮软件设计报告

软件设计报告姓名:郭靖学号:B2010年5月11日~2010年5月20日2目录第一章软件设计介绍第二章软件开发平台简介第三章软件设计的内容3.1 分数统计软件3.1.1设计题目及要求3.1.2设计思想及程序流程框图3.2 打字软件3.2.1设计题目及要求3.2.2设计思想及程序流程框图3.3 文本编辑器3.3.1设计题目及要求3.3.2设计思想及程序流程框图3.4 加密软件3.4.1设计题目及要求3.4.2设计思想及程序流程框图3.5 进制转换器3.5.1设计题目及要求3.5.2设计思想及程序流程框图3.6 第一周总程序分析3.6.1程序代码3.6.2运行结果3.7 学生成绩核算系统的设计与实现3.7.1设计题目及要求3.7.2设计思想及程序流程框图3.7.3逻辑功能程序3.7.4结果及完善方向3.8 模拟电信计费系统的设计与实现3.8.1设计题目及要求3.8.2设计思想及程序流程框图3.8.3逻辑功能程序3.8.4结果及完善方向第四章心得体会第一章软件设计介绍软件设计是一门年轻的学科,但它具有鲜明的实践性。

近年来在计算机领域中,它的地位显得越来越重要,不仅大型软件项目离不开它, 就是一般的,甚至小型软件项目也必须运用它的概念、原则和方法。

软件分析人员、软件设计、编程、测试、维护人员,以及软件管理人员都必须很好地掌握软件工程知识,才能适应岗位工作的要求,事实证明,不掌握软件工程知识,不按照软件工程的要求去做项目,提供给用户的产品只能是低质量的、难于维护的。

通过《软件设计》的学习,掌握软件生存期过程和软件工程、软件需求分析、软件复用技术、软件测试、软件维护、软件再工程、软件工具、软件开发环境、软件质量保证体系、软件工程标准化和软件文档、软件过程能力估计、软件工具项目管理等内容的基本概念、方法和原理,并运用可视化开发工具,结合软件设计方法,通过上机实验,提高应用系统的开发能力。

本课程是一门技能训练课,为在校学生的必修课程。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件设计报告( 2014 / 2015 学年第二学期)课程名称软件设计指导老师赵江实习时间第十八周学生姓名学号____学院______专业软件设计课程编号:B0465011C适用专业:班级:一、所涉及的课程及知识点涉及的课程:第6学期之前的专业基础课程。

知识点:专业基础课程中所学的知识点。

二、目的与任务目的:通过软件设计,培养学生的实践能力和创新精神,加强学生对专业基础课程的理解和掌握,加强学生高级语言编程能力、应用软件以及仿真能力。

任务:选择以下任一模块进行设计:Matlab软件仿真、C语言及应用。

软件设计的内容题目1:如果给出两个矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=136782078451220124A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=087654321B ,执行下面的矩阵运算命令。

(1)B A *5+和I B A +-分别是多少(其中I 为单位矩阵) (2)B A *⋅和B A *将分别给出什么结果,它们是否相同为什么 逻辑功能程序:function [ ] = EXP1()A=[4,12,20;12,45,78;20,78,136]; B=[1,2,3;4,5,6;7,8,0]; I=eye(3); disp('A+5*B='); disp(A+5*B); disp('A-B+I=') disp(A-B+I); disp('A.*B='); disp(A.*B) disp('A*B='); disp(A*B); End 实验过程与结果打开matlab ,在命令窗口“Command Window ”中键入edit,启动程序编辑器。

输入完整程序后利用save as 储存为M 文件,文件名为EXP1。

返回主界面,在命令窗口“Command Window”中输入函数EXP1(),按下回车,得到程序运行结果如下:>> EXP1( )A+5*B=9 22 3532 70 10855 118 136A-B+I=4 10 178 41 7213 70 137A.*B=4 24 6048 225 468140 624 0A*B=192 228 84738 873 3061284 1518 528实验结果分析(1)利用MATLAB提供的disp函数既可以输出表达式、数值,也可以输出字符串,其调用方式为:disp(表达式或数值)、disp(‘待显示字符串’);(2)在MATLAB的矩阵运算中,+、-运算符通用,表示矩阵相加、减;*与.*不同在于*表示矩阵乘法,而.*表示矩阵对应位置元素相乘,所以*要求两个矩阵的行、列数互为转置,而.*则要求两个矩阵行、列数要相同;(3)使用eye可以获得单位矩阵函数(矩阵对角线处元素为1,其余元素为0),矩阵的阶数由括号内的值决定,格式为eye(n),n为矩阵阶数。

题目2:请绘制出一个圆形,要求用函数实现。

逻辑功能程序function [] = EXP2(a,b,R)t=0:pi/150:2*pi;x=a+R*cos(t);y=b+R*sin(t);hold on;plot(x,y);plot(a,b,'+');axis([a-R,a+R,b-R,b+R]);axis equal;title('圆:(x-a)^2+(y-b)^2=R^2');legend(['(x-',num2str(a),')^2+(y-',num2str(b),')^2=',num2str(R), '^2']);hold off;end实验过程与结果打开matlab,在命令窗口“Command Window”中键入edit,启动程序编辑器。

输入完整程序后利用save as储存为M文件,文件名为EXP2。

返回主界面,在命令窗口“Command Window”中输入函数EXP2(),按下回车,得到程序运行结果如下:>>EXP2(15,25,40)-100102030405060x 圆:(x-a)2+(y-b)2=R 2实验结果分析(1)构建关于圆的参数方程,使用hold on 的使用保证后绘的图不会覆盖先绘的图,在程序结束前使用hold off ;(2)为了使圆的圆心位置和半径长度等参数可调,所以函数使用了带参量的输入方式;(3)绘图使用plot 函数,带参数可以限制绘图范围,plot 函数绘制圆心用符号‘+’表示;(4)axis equal 是坐标轴刻度等距,这样是图形显示的不失真; (5)lengend 、num2str 函数添加图形注释,lengend 添加注释的调用格式为lengend(‘字符串’,num2str 使数值转换成字符,num2str (数值或数值的表达式);题目3:双极型晶体管基区少子浓度分布试绘出缓变基区的杂质分布为:①()()⎪⎪⎭⎫ ⎝⎛-=B B B WxN x N 10; ②()()xW B B BeN x N η-=0时,基区的少子浓度分布图,并能清楚解释各参量对少子浓度分布函数的影响。

程序说明:当晶体管偏置在有源放大区时,V C <0且|V C |>>kT /q ,集电结边缘处电子密度为零,即 x =W B ,n B (W B )=0。

由此边界条件,得到缓变基区少子浓度分布函数:⎰-=B W x B B nB nE B dx x N x N qD I x n )()(1)( 假定:I nE =;D nB =2cm 2/s ;W B =;q =。

逻辑功能程序function [ ] = Question3( ) syms x eta NB0 InE DnB WB q a ; NB1x=NB0*(1-x/WB); NB2x=NB0*exp(-eta*x/WB);nBx=InE*int(NB2x,x,x,WB)/(NB2x*q*DnB); nB0=InE*WB/(q*DnB); y=nBx/nB0;nB0=subs(nB0,{InE,DnB,WB,q},{,2,,*10^-19}); y=subs(y,x,a*WB); y=subs(y,{q},{*10^-19});for i=0:2:8yx=limit(y,eta,i);ezplot(yx,[0,1]);text'η=',num2str(i)]);hold on;endhold off;grid on;title('不同内建电场下的基区少子浓度分布');text,,['nB0=InE*WB/(q*DnB)=',num2str(nB0*10^-15),'*10^8cm^-2'] );xlabel('x/WB');ylabel('nBx*q*DnB/(InE*WB)');axis([0,1,0,1]);end实验过程与结果打开matlab,在命令窗口“Command Window”中键入edit,启动程序编辑器。

输入完整程序后利用save as储存为M文件,文件名为EXP1。

返回主界面,在命令窗口“Command Window”中输入函数EXP1(),按下回车,得到程序运行结果如下:>>Question3()0.10.20.30.40.50.60.70.80.9100.10.20.30.40.50.60.70.80.91x/WB不同内建电场下的基区少子浓度分布n B x *q *D n B /(I n E *W B )实验结果分析(1)当杂质浓度呈线性分布时,少子浓度分布呈线性变化。

少子浓度随基区宽度的增大逐渐减小;(2)当杂质浓度呈指数分布时,少子浓度分布也呈指数变化。

少子浓度随基区宽度的增大逐渐减小;(3)随着eta 的增大,基区少子浓度逐渐减少,这是因为内建电场增大的原因,达到同样电流密度所需少子浓度梯度较低;(4)符号变量及其表达式的使用需要提前定义,用syms 定义; (5)对符号或表达式的积分采用int 函数,可以指定上下限,也可以只是不定积分。

题目4:确定PN 结势垒区内电场分布和碰撞电离率随反偏电压的变化关系。

(1)基本目标:突变结分析(2)标准目标:突变结+线性缓变结分析 设计物理基础背景(1)突变结势垒区内电场分布分析内建电势02logD Abi i N N V V n = N 区耗尽区宽度 1202()s bi n D N V V q x N ε⎡⎤+⎢⎥⎣⎦=P 区耗尽区宽度 1202()s bi p A N V V q x N ε⎡⎤+⎢⎥⎣⎦=, 其中,V 为反偏电压,约化浓度 0D AD AN N N N N =+电场强度()E x 在耗尽区中的变化关系如下式(1-4)、(1-5)所示:()()n D sqE x x x N ε=+ (0n x x -≤≤)()()p A sqE x x x N ε=- (0p x x ≤≤)且()E x 在0x =处达到最大值 12max02()bi s q E N V V ε⎡⎤=+⎢⎥⎣⎦(2)线性缓变结电场分布分析内建电势 213012log 2s bi bi i V a V V n aq ε⎡⎤⎛⎫⎢⎥= ⎪⎢⎥⎝⎭⎢⎥⎣⎦其中,杂质浓度梯度a 为常数,不妨取1910a = 耗尽区宽度 ()131212sn p bi x x V V aq ε⎡⎤==+⎢⎥⎣⎦电场强度()E x 在0x =处达到最大值 ()2max 8n p saqE x x ε=+ 电场强度()E x 在耗尽区的变化关系为 2max 1pxE E x ⎡⎤⎛⎫⎢⎥=-⎪ ⎪⎢⎥⎝⎭⎣⎦(3)碰撞电离率随反偏电压的变化关系碰撞电离率 exp m i B A E α⎡⎤⎛⎫=-⎢⎥ ⎪⎝⎭⎢⎥⎣⎦碰撞电离率表达式中的常数值代入上式(1-11),得:电子碰撞电离率 651.23107.0310exp in E α⎡⎤⎛⎫⨯=⨯-⎢⎥ ⎪⎝⎭⎣⎦空穴碰撞电离率 662.03101.5810exp ip E α⎡⎤⎛⎫⨯=⨯-⎢⎥ ⎪⎝⎭⎣⎦附:191.6021910q C -=⨯ 1408.85410/F cm ε-=⨯,011.9s εε= 1031.510/i n cm =⨯00.026kTV q==V 逻辑功能程序function [ ] = Question4(ND,NA) syms V x ; V0=; ni=*10^10; epsilon0=*10^-14; q=*10^-19; a=10^19; An=*10^5; Bn=*10^6; Ap=*10^6; Bp=*10^6; m=1;epsilons=*epsilon0; N0=NA*ND/(NA+ND);Vbi=V0*log(ND*NA/ni^2); %常量xn=sqrt(2*epsilons*N0*(Vbi+V)/q)/ND; xp=sqrt(2*epsilons*N0*(Vbi+V)/q)/NA;Exn=q*(xn+x)*ND/epsilons;Exp=q*(xp-x)*NA/epsilons;Emax=subs(Exn,x,0);%Vbih=V0*log(((a/(2*ni))*(12*epsilons*Vbi/(a*q))^(1/3))^2);xp_h=(1/2)*(12*epsilons*(Vbi+V)/(a*q))^(1/3);xn_h=xp_h;Emax_h=(a*q/(8*epsilons))*(xn_h+xp_h)^2;E_h=Emax_h*(1-(x/xp_h)^2);alphai_nn=An*exp(-(Bn/Exn)^m);alphai_pn=An*exp(-(Bn/Exp)^m);alphai_np=Ap*exp(-(Bp/Exn)^m);alphai_pp=Ap*exp(-(Bp/Exp)^m);alphai_nmax=subs(alphai_nn,x,0);alphai_pmax=subs(alphai_pp,x,0);alphai_nh=An*exp(-(Bn/E_h)^m);alphai_ph=Ap*exp(-(Bp/E_h)^m);alphai_nhmax=subs(alphai_nh,x,0);alphai_phmax=subs(alphai_ph,x,0);%%%%%%%%%————作图——————%%%%%%%%%%%%%%%%%for i=0:2:8figure(1);subplot(2,1,1); %%%%%————突变结ezplot(subs(Exn,V,i),[-subs(xn,V,i),0]);hold on;ezplot(subs(Exp,V,i),[0,subs(xp,V,i)]);axis([-subs(xn,V,i),subs(xp,V,i),0,subs(Emax,V,i)]);ylabel('|E|');text(subs(xp/2,V,i),subs(Exp,{x,V},{subs(xp/2,V,i),i}),['V=',n um2str(i),'v']);grid on;title('突变结电场分布');subplot(2,1,2); %%%%%————缓变结ezplot(subs(E_h,V,i),[-subs(xn_h,V,i),subs(xp_h,V,i)]);hold on;axis([-subs(xn_h,V,i),subs(xp_h,V,i),0,subs(Emax_h,V,i)]);ylabel('|E|');text(subs(xp_h/2,V,i),subs(E_h,{x,V},{subs(xp_h/2,V,i),i}),['V =',num2str(i),'v']);grid on;title('线性缓变结电场分布');figure(2);subplot(2,2,1); %%———突变结电子碰撞电离率ezplot(sqrt(subs(alphai_nn,V,i)),[-subs(xn,V,i),0]);hold on;ezplot(sqrt(subs(alphai_pn,V,i)),[0,subs(xp,V,i)]);axis([-subs(xn,V,i),subs(xp,V,i),0,sqrt(subs(alphai_nmax,V,i)) ]);ylabel('(αi)^(1/2)');text(0,subs(sqrt(alphai_pn),{x,V},{0,i}),['V=',num2str(i),'v']);grid on;title('突变结电子碰撞电离率分布');subplot(2,2,2); %%———突变结空穴碰撞电离率ezplot(sqrt(subs(alphai_np,V,i)),[-subs(xn,V,i),0]);hold on;ezplot(sqrt(subs(alphai_pp,V,i)),[0,subs(xp,V,i)]);axis([-subs(xn,V,i),subs(xp,V,i),0,sqrt(subs(alphai_pmax,V,i)) ]);ylabel('(αi)^(1/2)');text(0,subs(sqrt(alphai_pp),{x,V},{0,i}),['V=',num2str(i),'v'] );grid on;title('突变结空穴碰撞电离率分布');subplot(2,2,3); %%———缓变结电子碰撞电离率ezplot(log10(subs(alphai_nh,V,i)),[-subs(xn_h,V,i),subs(xp_h,V ,i)]);hold on;ylabel('log10(αi)');text(0,subs(log10(alphai_nh),{x,V},{0,i}),['V=',num2str(i),'v' ]);grid on;title('线性缓变结电子碰撞电离率分布');subplot(2,2,4); %%———缓变结空穴碰撞电离率ezplot(log10(subs(alphai_ph,V,i)),[-subs(xn_h,V,i),subs(xp_h,V ,i)]);hold on;ylabel('log10(αi)');text(0,subs(log10(alphai_ph),{x,V},{0,i}),['V=',num2str(i),'v' ]);grid on;title('线性缓变结空穴碰撞电离率分布');endend实验过程与结果运行matlab,在菜单栏中点击“File”,选择“New—>Function M-File”,命名为Question4,键入整个函数,在主界面的“Command Window”中输入函数Question4(ND,NA),其中ND是施主杂质浓度,NA是受主杂质浓度,按回车会显示结果,具体显示如下:>> Question4(2*10^16,9*10^16)-6-5-4-3-2-101x 10-50.511.525x突变结电场分布|E |-2-1012x 10-4123x 104x线性缓变结电场分布|E |-6-4-2x 10-5010203040x 突变结电子碰撞电离率分布(αi )(1/2)-6-4-2x 10-502468x 突变结空穴碰撞电离率分布(αi )(1/2)-2-1012x 10-4-100-80-60-40-20x线性缓变结电子碰撞电离率分布l o g 10(αi)-2-1012x 10-4-150-100-50x线性缓变结空穴碰撞电离率分布l o g 10(αi)实验结果分析(1)对多图的绘制,subplot 函数使不同类的函数分别绘制在不同的坐标中,同时使用hold on 让曲线叠加;(2)由突变结电场分布图得到势垒区内的电场强度与距离结的距离成线性关系,随着距离增大,电场强度逐渐从最大值减小,直到PN 结的边缘减少为零;(3)由突变结电场分布图还可以得到杂质浓度大的一侧结宽较小,而且结宽之比与浓度之比成反比;(4)电离率随着电场的增加增加,且在电场最大时电离率也是最大,而且电压依赖比较大,同等条件下空穴的电离率要小于电子的电离率;题目5:确定雪崩倍增因子随外加反偏电压的变化关系。

相关文档
最新文档