与编译器优化相关的所有开关
A. Delphi的命令行编译命令
Borland出品的Delphi,有着闪电般的编译速度,但是在界面控件使用较多、工程项目较大的时候,编译一个工程仍需要一段时间,打开庞大的Delphi IDE,也需要时间。其实,在一个工程开发结束,调试完成之后的Release编译,完全可以用命令行来执行,因为Delphi的编译器参数不像C++编译器那样复杂。
笔者把Delphi联机手册中关于命令行编译(command-line compiler)的几篇主题作了翻译,希望对Delphi开发人员有帮助。
目录
1. Command-line compiler
命令行编译器
2. Command-line compiler options
命令行编译器选项
3. Compiler directive options
编译器指令选项
4. Compiler mode options
编译模式选项
5. DCC32.CFG file
编译器配置文件DCC32.CFG
6. Debug options
调试选项
7. Directory options
目录选项
8. IDE command-line options
IDE命令行选项
9. Generated files
几个IDE自动生成的文件介绍
Command-line compiler
命令行编译器
Delphi's command-line compiler (dcc32.EXE) lets you invoke all the functions of the IDE compiler (DELPHI32.EXE) from the DOS command line (see IDE command-line options. Run the command-line compiler from the DOS prompt using the syntax:
Delphi’s命令行编译器(dcc32.exe)允许你从DOS命令行方式(参照:IDE命令行选项)实现IDE编译器(delphi32.exe)的所有功能。用DOS命令运行命令行编译器语法如下:
dcc32 [options] filename [options]
dcc32 [选项] [文件名] [选项]
where options are zero or more parameters that provide information to the compiler and filename is the name of the source file to compile. If you type dcc32 alone, it displays a help screen of command-line options and syntax.
零或多个参数给编译器提供信息,文件名指定需要编译的源文件名。如果你单独输入dcc32,它会显示一个关于命令行编译的选项和语法的屏幕。
If filename does not have an extension, the command-line compiler assumes .dpr, then .pas, if no .dpr is found. If the file you're compiling to doesn't have an extension, you must append a period (.) to the end of the filename.
如果文件名没有扩展名,命令行编译器会查找扩展名为.dpr的同名文件,如果找不到,则查找扩展名为.pas的同名文件。如果你的源文件确实没有扩展名,你需要在文件名的末尾添加(.)。
If the source text contained in filename is a program, the compiler creates an executable file named filename.EXE. If filename contains a library, the compiler creates a file named filename.DLL. If filename contains a package, the compiler creates a file named filename.BPL. If filename contains a unit, the compiler creates a unit file named filename.dcu.
如果指定的源文件是一个工程文件,编译器会创建一个扩展名为.EXE的同名可执行文件。如果指定的源文件是一个库文件,编译器创建一个扩展名为.DLL的同名动态链接库文件。如果指定的源文件是一个包文件,编译器会创建一个扩展名为.BPL的同名包。如果指定的源文件是一个单元文件,编译器会创建一个扩展名为.dcu的目标代码文件。
You can specify a number of options for the command-line compiler. An option consists of a slash (/) or immediately followed by an option letter. In some cases, the option letter is followed by additional information, such as a number, a symbol, or a directory name. Options can be given in any order and can come before or after the file name.
你可以为命令行编译器指定多个参数。一个参数包含一个破折号“-”(或“/”)和紧跟着的一个选项字符构成。通常情况下,选项字符后面会跟一些附加的信息,如一个数字、一个符号、一个目录等。选项可以是任意顺序并且可以在源文件名前面或后面。
Command-line compiler options
命令行编译选项
The IDE lets you set various options through the menus; the command-line compiler gives you access to these options using the slash (/) delimiter. You can also precede options with a hyphen (-) instead of a slash (/), but those options that start with a hyphen must be separated by blanks. For example, the following two command lines are equivalent and legal:
IDE允许你使用菜单来设置各种编译选项,而命令行编译器允许你使用字符“/”作为分隔符来设定这些编译选项。你也可以使用连字符“-”来代替“/”,但是用“-”引出的参数之间必须用空格隔开。例如,下面两个命令都是等同的也是合法的:
DCC -IC:\DELPHI -DDEBUG SORTNAME -$R- -$U+
DCC /IC:\DELPHI/DDEBUG SORTNAME /$R-/$U+
The first command line uses hyphens with at least one blank separating options. The second uses slashes and no separation is needed.
第一个编译命令用“-”引出参数,且参数之间有多个空格分隔。第二个编译命令用“/”引出参数,参数之间不必要分隔。
The following table lists the command-line options. In addition to the listed options, all single-letter compiler directives can be specified on the command line, as described in Compiler directive options.
下列表中列出所有的命令行参数。在附加的选项列表中,所有的单字符编译器指令都可以在命令行编译中使用,详情请参照:编译器指令。
Option Description
选项 描述
Aunit=alias 设置单元别名
B 编译所有单元
CC 编译控制台程序
CG 编译图形界面程序
Ddefines 编译条件符号定义
Epath 可执行文件输出路径
Foffset 查找运行期间错误
GD 生成完整.Map文件
GP 生成.Map文件Public段
GS 生成.Map文件Segment段
H 输出提示信息
Ipaths 文件包含路径
J 生成.Obj目标文件
JP 生成C++类型.Obj目标文件
Kaddress Set image base address
LEpath 包.BPL文件输出路径
LNpath .dcp文件输出路径
LUpackage 使用运行期间包列表
M 编译有改动的源文件
Npath dcu/dpu文件输出目录
Opaths .Obj文件(汇编目标代码文件)路径
P 按8.3格式文件名查找
Q 安静模式
Rpaths 资源文件(.RES)路径
TXext 目标文件扩展名
Upaths 单元文件路径
V 为Turbo Debugger生成调试信息文件
VN 以.Giant格式生成包含命名空间的调试信息文件(将用于C++Builder)
VR 生成调试信息文件.rsm
W 输出警告信息
Z Disable implicit compilation
$directive Compiler directives
--Help 显示编译选项的帮助。同样的,如果你在命令行单独输入dcc32,也会显示编译选项的帮助。
--version 显示产品名称和版本
Compiler directive options
编译器指令选项
Delphi supports the compiler directives described in Compiler directives. The $ and D command-line options allow you to change the default states of most compiler directives. Using $ and D on the command line is equivalent to inserting the corresponding compiler directive at the beginning of each source file compiled.
Delphi支持用编译器指令关键字描述的编译器指令。使用“$”和“D”命令行选项可以改变所有的默认编译器状态。用“$”和“D”命令行选项等同于在源文件的前面添加编译器指令。
Switch directive option
编译器指令选项开关
The $ option lets you change the default state of all of the switch directives. The syntax of a switch directive option is $ followed by the directive letter, followed by a plus (+) or a minus (-). For example:
“$”允许你改变每一种编译器指令默认状态。编译器指令的语法是“$”后紧跟一个指令字符,再跟一个“-”或“+”。例如:
dcc32 MYSTUFF -$R-
compiles MYSTUFF.pas with range-checking turned off, while:
不使用边界检查编译MYSTUFF.pas单元:
dcc32 MYSTUFF -$R+
compiles it with range checking turned on. Note that if a {$R+} or {$R-} compiler directive appears in the source text, it overrides the -$R command-line option.
使用界面检查编译MYSTUFF.pas单元。如果将编译器指令{$R+}或{$R-}添加到源文件的开始,它将覆盖从命令行传入的参数。
You can repeat the -$ option in order to specify multiple compiler directives:
你可以用多个“$”来指定多个编译器指令,如:
dcc32 MYSTUFF -$R--$I--$V--$U+
Alternately, the command-line compiler lets you write a list of directives (except for $M), separated by commas:
命令行编译器允许作用逗号分隔的编译器指定列表,如:
dcc32 MYSTUFF -$R-,I-,V-,U+
只需要用一个“$”符号。
Only one dollar sign ($) is needed.
注意,因为$M的格式不一样,你不能在逗号分隔的指令列表中使用$M
Note that, because of its format, you cannot use the $M directive in a list of directives separated by commas.
Conditional defines option
条件编译选项
The -D option lets you define conditional symbols, corresponding to the {$DEFINE symbol} compiler directive. The -D option must be followed by one or more conditional symbols separated by semicolons (;). For example, the following command line:
“-D”选项允许你定义一个编译条件,符合你用{$DEFINE symbol}定义的编译器指令。“-D”选项后必须跟随一或多个用分号分隔的编译条件符号,如下命令:
dcc32 MYSTUFF -DIOCHECK;DEBUG;LIST
defines three conditional symbols, iocheck, debug, and list, for the compilation of MYSTUFF.pas. This is equivalent to inserting:
定义了三个编译条件符号:IOCHECK,DEBUG,LIST,用于MYSTUFF.pas单元中。这等同于在源文件中插入以下语句:
{$DEFINE IOCHECK}
{$DEFINE DEBUG}
{$DEFINE LIST}
at the beginning of MYSTUFF.pas. If you specify multiple -D directives, you can concatenate the symbol lists. Therefore:
如果你指定了多个“-D”选项,你可以联接它们,如下:
dcc32 MYSTUFF -DIOCHECK-DDEBUG-DLIST
is equivalent to the first example.
等同于第一个例子。
Compiler mode options
编译模式选项
A few options affect how the compiler itself functions. As with the other options, you can use these with either the hyphen or the slash format. Remember to separate the options with at least one blank.
有几个选项能影响编译器自身的功能。像其它选项一个,你可以使用“/”或“-”的格式。别忘了用至少一个空格分隔这些选项。
Make (-M) option
选项(-M)
The command-line compiler has built-in MAKE logic to aid in project maintenance. The -M option instructs command-line compiler to check all units upon which the file being compiled depends. Using this option results in a much quicker compile time.
命令行编译器使用构造逻辑的方式来维护工程。“-M”选项指示编译器检查所有与编译文件相关联的文件。用这个参数会导致编译时间增大。
A unit is recompiled under the following conditions:
一个源文件在下列情况下会重新编译:
The source file for that unit has been modified since the unit file was created.
源文件被创建以来被修改过;
用“$I”指令包含的任何文件,用“$L”包含的任何.Obj文件,或用“$R”关联的任何资源文件.Res,比源文件中的要新;
Any file included with the $I directive, any .OBJ file linked in by the $L directive, or any .res file referenced by the $R directive, is newer than the unit file.
The interface section of a unit referenced in a uses statement has changed.
单元接口部分interface的uses段有改动。
Units compiled with the -Z option are excluded from the make logic.
在单元编译时指令“-Z”在构造逻辑期不被接受。
If you were applying this option to the previous example, the command would be:
如果你在上一个例子中使用这个指令,编译命令就应该是:
dcc32 MYSTUFF -M
Build all (-B) option
编译所有 选项(-B)
Instead of relying on the -M option to determine what needs to be updated, you can tell command-line compiler to update all units upon which your program depends using the -B option. You can't use -M and -B at the same time. The -B option is slower than the -M option and is usually unnecessary.
用于取代要知道哪些单元需要更新-M的选项,你可以使用-B选项来更新所有你的程序中关联的单元。你不能在程序中同时使用-M和-B。选项-B比-M速度更慢,而且它并不是必需的。
If you were using this option in the previous example, the command would be
如果你在前一个例子中使用这个参数,编译命令就应该是:
dcc32 MYSTUFF -B
Find error (-F) option
查找错误 选项(-F)
When a program terminates e to a runtime error, it displays an error code and the address at which the error occurred. By specifying that address in a -Faddress option, you can locate the statement in the source text that caused the error, provided your program and units were compiled with debug information enabled (via the $D compiler directive).
当一个程序由于运行期间错误而终止时,它会显示一个错误号和错误地址在错误发生时。用-Faddress选项来指定错误地址,你在源文件中能找到引发错误的位置,如果你的程序和单元编译时附加了调试信息(使用$D编译器指令)。
In order for the command-line compiler to find the runtime error with -F, you must compile the program with all the same command-line parameters you used the first time you compiled it.
为了命令行编译器能用-F选项查找运行期间错误,你必须传递与第一次编译时相同的指令列表。
As mentioned previously, you must compile your program and units with debug information enabled for the command-line compiler to be able to find runtime errors. By default, all programs and units are compiled with debug information enabled, but if you turn it off, using a {$D-} compiler directive or a -$D- option, the command-line compiler will not be able to locate runtime errors.
先前提到过,你的程序和单元必须启用调试信息,命令行编译器才能查找运行期间错误。默认情况下,所有的程序和单都是启用调试信息的,除非你用{-D}或-$D-指令关闭它,这样,命令行编译器就不能查找运行期间错误了。
Use packages (-LU) option
使用包(-LU)选项
Use the -LU option to list additional runtime packages that you want to use in the application being compiled. Runtime packages already listed in the Project Options dialog box need not be repeated on the command line.
使用-LU选项来在编译时添加你应用程序中要用到的运行期间包。运行期间包已经在“工程选项”对话框中列举的,不必再在命令行中添加。
Disable implicit compilation (-Z) option
(此选项在delphi6.0/7.0中有不同描述,在此不作翻译)
The -Z option prevents packages and units from being implicitly recompiled later. With packages, it is equivalent to placing {$ IMPLICITBUILD OFF} in the .dpk file. Use -Z when compiling packages that provide low-level functionality, that change infrequently between builds, or whose source code will not be distributed.
Target file extension (-TX) option
目标文件扩展名(-TX)选项
The -TX option lets you override the default extension for the output file. For example,
选项-TX允许你改写默认的输出文件扩展名。例如:
dcc32 MYSTUFF -TXSYS
generates compiled output in a file called MYSTUFF.SYS.
生成的将是一个叫做MYSTUFF.SYS的文件。
Quiet (-Q) option
安静模式(-Q)选项
The quiet mode option suppresses the printing of file names and line numbers ring compilation. When the command-line compiler is invoked with the quiet mode option
安静模式选项禁止在编译时显示文件名及代码行数,如果命令行编译器调用这个选项的话。
dcc32 MYSTUFF -Q its output is limited to the startup right message and the usual statistics at the end of compilation. If any errors occur, they will be reported.
它的输出仅限于起始时行版权信息以及结尾的统计信息。当然,如果发生错误,它也会输出。
DCC32.CFG file
DCC32.CFG配置文件
You can set up a list of options in a configuration file called DCC32.CFG, which will then be used in addition to the options entered on the command line. Each line in configuration file corresponds to an extra command-line argument inserted before the actual command-line arguments. Thus, by creating a configuration file, you can change the default setting of any command-line option.
你可以设置一个编译选项列表到一个叫做DCC32.CFG的配置文件中,它将用于编译时附加到命令行参数后。配置文件的每一行都相当于一个额外的命令行参数插入到实际的命令行参数前(注意,是实际参数前)。因而,你可以使用这个配置文件改变一些命令行参数的默认设置。
The command-line compiler lets you enter the same command-line option several times, ignoring all but the last occurrence. This way, even though you've changed some settings with a configuration file, you can still override them on the command line.
命令行编译器允许你输入相同的命令行参数,它将忽略所有除最后一个之外。这个的话,尽管通过配置文件你可以改变一些设置,你仍然可以覆盖它使用命令行参数。
When dcc32 starts, it looks for DCC32.CFG in the current directory. If the file isn't found there, dcc32 looks in the directory where DCC32.EXE resides.
当dcc32启动时,它查找DCC32.CFG文件在当前目录。如果文件没有找到,dcc32会查找它所在的目录。
Here's an example DCC32.CFG file, defining some default directories for include, object, and unit files, and changing the default states of the $O and $R compiler directives:
以下是一个DCC32.CFG配置文件的例子,定义了关于文件包含、OBJ文件包含、单元文件搜索路径信息,并改变了编译器指令$O和$R的默认值。
-IC:\DELPHI\INC;C:\DELPHI\SRC
-OC:\DELPHI\ASM
-UC:\DELPHI\UNITS
-$R+
-$O-
Now, if you type:
现在,如果你输入:
dcc32 MYSTUFF
the compiler performs as if you had typed the following:
编译器把它当作你输入如下命令:
dcc32 -IC:\DELPHI\INC;C:\DELPHI\SRC -OC:\DELPHI\ASM -UC:\DELPHI\UNITS -$R+ -$O- MYSTUFF
Debug options
调试选项
The compiler has two sets of command-line options that enable you to generate external debugging information: the map file options and the debug info options.
编译器有两个命令行参数可以生成外部调试信息:MAP文件选项和调试信息选项。
Map file (-G) options
Map文件(-G)选项
The -G option instructs the command-line compiler to generate a .map file that shows the layout of the executable file. Unlike the binary format of executable and .dcu files, a .map file is a legible text file that can be output on a printer or loaded into the editor. The -G option must be followed by the letter S, P, or D to indicate the desired level of information in the .map file. A .MAP file is divided into three sections:
选项-G指示命令行编译器生成一个.map文件来查看一个可执行文件的布局。不同于可二进制的可执行文件和.dcu文件,.map文件是一个可读的文本文件,可以被打印或是其它文本编辑器编辑。选项-G后必须跟字符S、P或D,去决定你想要在.map文件列出的信息。一个.MAP文件被分成三个节:
Segment
Publics
Line Numbers
-GS outputs only the Segment section, -GP outputs the Segment and Publics section, and -GD outputs all three sections. -GD also generates a .DRC file that contains tables of all string constants declared using the resourcestring keyword.
-GS选项只输出Segment Section,-GS选项输出Segment和Publics,-GD输出所有的三个Sections.-GD选项也生成一个扩展名为.DRC的文件包含所有的用resourcestring关键字声明的字符串常量。
For moles (program and units) compiled in the {$D+,L+} state (the default), the Publics section shows all global variables, proceres, and functions, and the Line Numbers section shows line numbers for all proceres and functions in the mole. In the {$D+,L-} state, only symbols defined in a unit's interface part are listed in the Publics section. For moles compiled in the {$D-} state, there are no entries in the Line Numbers section.
用默认的编译选项{$D+,L+}编译模块(程序或单元),Publics Section列举所有的全局变量、过程和函数,Line Numbers Section列举模块中所有的过程和函数的行号。如果用{$D+,L-}编译选项编译模块,Publics Section中仅列举在单元的interface部分定义的符号。如果用{$D-}选项编译模块,在Line Numbers Section没有任何入口。
Debug info (-V) options
调度选项(-V)
The -V options (-V, -VN. and -VR), which cause the compiler to generate debug information, can be combined on the command line.
选项-V、-VN、-VR会指示编译器生成调试信息,它们能在命令行中组合使用。
Generate Turbo Debugger debug info (-V) option
生成Turbo Debugger使用的调试信息的选项(-V)
When you specify the -V option on the command line, the compiler appends Turbo Debugger 5.0-compatible external debug information at the end of the executable file. Turbo Debugger includes both source- and machine-level debugging and powerful breakpoints.
当你在命令行中使用-V选项时,编译器会在可执行文件的末尾附加与Turbo Debugger5.0一致的外部调试信息。Turbo Debugger包含代码和硬件级别的强大的断点。
Even though the debug information generated by -V makes the resulting executable file larger, it does not affect the actual code in the executable, and does not require additional memory to run the program.
虽然附加调试信息到查执行文件中会使可执行文件增大,但是它并不影响实际可执行文件中的可执行代码,也不需要额外的内存来启动程序。
The extent of debug information appended to the executable file depends on the setting of the $D and $L compiler directives in each of the moles (program and units) that make up the application. For moles compiled in the {$D+,L+} state, which is the default, all constant, variable, type, procere, and function symbols are known to the debugger. In the {$D+,L-} state, only symbols defined in a unit's interface section are known to the debugger. In the {$D-} state, no line-number records are generated, so the debugger cannot display source lines whe
B. debug和release两种编译方法的区别与联系
Debug 为调试版本,Release 为发布版本,从开发者和用户视角看,他们的区别如下:
一、从开发者视角,Debug和Release的区别,主要是编译器的选项不同,Debug 包含调试信息,并且不作任何优化,便于程序员调试程序。Release 往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。
Debug 版本 相关参数解释:
参数 含义
/MDd /MLd 或 /MTd 使用 Debug runtime library(调试版本的运行时刻函数库)
/Od 关闭优化开关
/D "_DEBUG" 相当于 #define _DEBUG,打开编译调试代码开关(主要针对assert函数)
/ZI
创建 Edit and continue(编辑继续)数据库,这样在调试过程中如果修改了源代码不需重新编译
GZ 可以帮助捕获内存错误
Release 版本 参数含义
/MD /ML 或 /MT 使用发布版本的运行时刻函数库
/O1 或 /O2 优化开关,使程序最小或最快
/D "NDEBUG" 关闭条件编译调试代码开关(即不编译assert函数)
/GF 合并重复的字符串,并将字符串常量放到只读内存,防止被修改
二、使用者视角,我们下载软件的时候,一般应该选择Release版。Debug一般比测试版更粗,主要提供给高级测试者反馈修改意见。
C. c语言防止优化
编译器编译命令里有设置选项,通过设置,你可以要求 不优化,也可以要求用哪种优化。
具体选项有哪些,要查自己编译器的帮助文件。
例如,MS VC++ 6.0 编译器编
优化选项:
/O1:优化使产生的可执行代码最小
/O2:优化使产生的可执行代码速度最快
/Oa:指示编译器程序里没有使用别名,可以提高程序的执行速度
/Ob:控制内联(inline)函数的展开
/Od:禁止代码优化
/Og:使用全局优化
/Oi:用内部函数去代替程序里的函数调用,可以使程序运行的更快,但程序的长度变长
/Op:提高浮点数比较运算的一致性
/Os:产生尽可能小的可执行代码
/Ot:产生尽可能块的可执行代码
/Ow:指示编译器在函数体内部没有使用别名
/Ox:组合了几个优化开关,达到尽可能多的优化
/Oy:阻止调用堆栈里创建帧指针
/O2 为了加速,会优化掉。 选 /Od 不优化。
D. vs中debug和release版本的区别
vs中的程序有debug和release两个版本。
1、版本不同
Debug通常称为调试版本,通过一系列编译选项的配合,编译的结果通常包含调试信息,而且不做任何优化,以为开发人员提供强大的应用程序调试能力。
而Release通常称为发布版本,是为用户使用的,一般客户不允许在发布版本上进行调试。
2、运行效果不同
debug程序通常比release程序要慢,尤其是处理视频方便release要比debug快很多。
3、算法不同
debug跟release在初始化变量时所做的操作是不同的,debug是将每个字节位都赋成0xcc, 而release的赋值近似于随机。
(4)与编译器优化相关的所有开关扩展阅读:
二者的编译选项。
Debug 版本:
/Od 关闭优化开关
/D "_DEBUG" 相当于 #define _DEBUG,打开编译调试代码开关(主要针对assert函数)
/ZI 创建 Edit and continue(编辑继续)数据库,这样在调试过程中如果修改了源代码不需重新编译
/GZ 可以帮助捕获内存错误
/Gm 打开最小化重链接开关,减少链接时间
Release 版本:
/MD /ML 或 /MT 使用发布版本的运行时刻函数库
/O1 或 /O2 优化开关,使程序 最小或最快
/D "NDEBUG" 关闭条件编译调试代码开关(即不编译assert函数)
/GF 合并重复的字符串,并将字符串常量放到只读内存,防止被修改
可以理解Debug 和 Release 并没有本质的界限,他们只是一组编译选项的集合,编译器只是按照预定的选项行动。可以修改这些选项,从而得到优化过的调试版本或是带跟踪语句的发布版本。
E. proteus怎么找开关的位置
在PROTEUS的搜索窗口中输入button或switch查找开关,按个人需要进行选择,button是轻触开关,switch是自锁开关。
具体操作请参照以下步骤。
1、首先在电脑上打开proteus软件,图为软件加载界面。
(5)与编译器优化相关的所有开关扩展阅读
proteus完善的电路仿真功能:
ProSPICE混合仿真,基于工业标准SPICE3F5,实现数字/模拟电路的混合仿真;
超过27000个仿真器件,可以通过内部原型或使用厂家的SPICE文件自行设计仿真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件;
丰富的虚拟仪器,13种虚拟仪器,面板操作逼真,如示波器,逻辑分析仪,信号发生器,直流电压/电流表,交流电压/电流表,数字图案发生器,逻辑探头,虚拟终端,SPI调试器,I2C调试器等;
生动的仿真显示:用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动;
单片机协同仿真功能:
支持主流的CPU类型:如ARM7、8051/52、AVR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器;
支持通用外设模型:如字符LCD模块、图形LCD模块、LED点阵、LED七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还可以使仿真电路通过PC机串口和外部电路实现双向异步串行通信;
实时仿真:支持UART/USART/EUSARTs仿真、中断仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿真;
编译及调试:支持单片机汇编语言的编辑/编译/源码级仿真,内带8051、AVR、PIC的汇编编译器,也可以与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语言的源码级仿真和调试。
F. atlas 鏄浠涔堢殑缂╁啓锛
C/ATLAS鍏ㄧОCommon / Abbreviated Test Language for All Systems(鍏ㄧ郴缁熷叕鍏/绠鏄庢祴璇曡瑷)鏄涓涓骞挎硾鐢ㄤ簬鍐涗簨鍜岃埅绌烘祴璇旷殑镙囧嗳鍖栬瑷.鐢盗EEE璐熻矗瀵硅ヨ瑷镙囧嗳杩涜岀$悊缁存姢,璁稿氩浗瀹堕兘鍙傚姞浜呜繖涓璇瑷镄勫紑鍙.链鏂囦粙缁岖殑姝f槸鎴戝浗寮鍙戠殑ATLAS缂栬疟鍣ㄤ腑镄勮涔夊垎鏋愰儴鍒.
璇涔夊垎鏋愭槸缂栬疟涓镄勯吨镣,鍦ㄨ涔夊垎鏋愪腑涓崭粎瑕佽繘琛岀▼搴忕殑涓娄笅鏂囱涔変竴镊存х殑妫镆,杩樿佷负鐩镙囦唬镰佺敓鎴愭彁渚涜冻澶熺殑淇℃伅.链鏂囦粙缁崭简ATLAS璇涔夊垎鏋愮殑瀹炵幇鏂规硶,骞跺笰TLAS绯荤粺镄勫疄鐜版妧链,杩愯岀幆澧幂殑瀹炵幇鏂规硶杩涜屼简绠鍗旷殑浠嬬粛.
瀵逛簬ATLAS璇涔変腑瑕佹眰镄勭壒娈婇梾棰,鎴戜滑閲囩敤浜嗛溃钖戝硅薄鎶链锷犱互瀹炵幇,骞跺彇寰椾简寰埚ソ镄勭粨鏋.鍏蜂綋镄勫疄鐜伴噰鐢ㄩ润镐佽涔夊垎鏋愬拰锷ㄦ佽涔夊垎鏋愮浉缁揿悎镄勬柟娉.链鏂囧笰TLAS绯荤粺涓镄勮惧囩$悊绯荤粺,杩愯岀幆澧幂郴缁熺瓑涔熻繘琛屼简绠鍗旷殑浠嬬粛,涓篈TLAS绯荤粺镄勮繘涓姝ュ紑鍙戝犲畾浜嗗熀纭.
鐩 褰
绗涓绔 绯荤粺绠浠
1.1 ATLAS 绯荤粺绠浠
C/ATLAS鏄鍏ㄧ郴缁熷叕鍏/绠鏄庢祴璇曡瑷(Common / Abbreviated Test Language for All Systems)镄勭缉鍐,瀹冩槸涓绉嶅姛鑳藉崄鍒嗗己澶х殑鍏ㄧ郴缁熸爣鍑嗘祴璇曡瑷,鍦ㄥ啗浜,鑸绌轰簨涓氢腑鍏锋湁骞挎硾镄勫簲鐢.
20涓栫邯60骞翠唬,ARINC鍏鍙镐负浜嗗硅埅绌哄櫒涓婄殑鐢靛瓙璁惧囩郴缁熻繘琛屾祴璇,涓诲姙寮鍙戜简涓涓娴嬭瘯璇瑷ATLAS,褰撴椂ATLAS镄勫惈涔夋槸鎸嘇bbreviated Test Language for Avionics Systems .闅忓悗,缇庡浗闄嗗啗,娴峰啗,鑸绌洪儴阒熶互鍙婂寳澶цタ娲嫔叕绾︾粍缁囦篃锷犲叆鍒拌繖涓璇瑷镄勫紑鍙.
1976骞,C/ATLAS镄勬带鍒舵潈鐢盇RINC绉讳氦缁橧EEE,姝ゆ椂ATLAS镄勫惈涔夋洿涓哄箍娉:Abbreviated Test Language for All Systems .钖屾椂ARINC鍙戝竷浜咺EEE镙煎纺镄𪞝RINC416-13A镙囧嗳.1988骞,IEEE鍙戝竷浜咥TLAS716-1988/9镙囧嗳,钖屽勾ARINC涔熷彂甯冧简镙囧嗳ARINC626-1988/9,涔嫔悗IEEE鍜孉RINC姣忎笁,锲涘勾灏辨洿鏂颁竴娆″悇镊镄勬爣鍑.2000骞,IEEE鍙戝竷浜咰/ATLAS镄勬渶鏂扮増链珹TLAS2000镙囧嗳,鎴戜滑瀹炵幇镄勭郴缁熼噰鐢ㄧ殑灏辨槸IEEE镄𪞝TLAS2000镙囧嗳.
C/ATLAS鍏锋湁濡备笅镄勭壒镣:
涓,瀹冩槸涓涓镙囧嗳镄勬祴璇曡瑷.涓轰简阒叉㈣瑷镄勬棩鐩婂签澶у拰涓嶅埄浜庣淮鎶,璇ヨ瑷鐢盗EEE璐熻矗鍙戝竷鐩稿簲镄勬爣鍑,浠ヨ揪鍒拌瑷镄勮勮寖鍜岀粺涓.鍙备笌璇ユ爣鍑嗙殑涓昏佺敤鎴锋湁缇庡浗锲介槻閮,寰峰浗锲介槻閮,娉曞浗锲介槻閮,鑻卞浗锲介槻閮,鐟炲吀锲介槻閮ㄥ拰鑸绌哄伐涓氱殑鑸绌烘棤绾跨数鍏鍙哥瓑.
浜,C/ATLAS鍏锋湁鍜屾祴璇曡惧囨棤鍏崇殑鐗规,鍙搴旂敤浜庢墍链夌殑娴嬭瘯绯荤粺.鐢ˋTLAS璇瑷缂栧啓镄勭▼搴忓彲浠ユ祴璇曞悇绉崭华鍣ㄨ惧,娴嬭瘯镄勪唬镰佷腑涓嶅寘𨰾浠讳綍娴嬭瘯镓閲囩敤镄勭‖浠朵俊鎭.涔熷氨鏄璇,鍙瑕佹祴璇曚娇鐢ㄧ殑镊锷ㄦ祴璇曡惧(ATE)鏀鎸丄TLAS,渚垮彲浠ヤ笉缁忚繃淇鏀瑰湴浣跨敤鍦ㄥ彟澶栦竴涓娴嬭瘯绯荤粺涓缂栧啓镄𪞝TLAS绋嫔簭.
涓,ATLAS镄勫姛鑳藉崄鍒嗗己澶,鎻愪緵浜嗙湡姝g殑镊锷ㄦ祴璇.鍦ㄤ互寰镄勬祴璇曚腑,娴嬭瘯浜哄憳涓崭粎瑕佽冭槛娴嬭瘯镄勭畻娉曞拰娴佺▼,杩樿佽姳寰埚氱簿锷涚敤浜庨夋嫨娴嬭瘯浣跨敤镄勮惧囩敋镊宠捐℃祴璇曟墍闇镄勭‖浠剁瓑,杩涜屼笉钖岀殑娴嬭瘯闇瑕佷笉钖岀殑娴嬭瘯璁惧囧拰鐩稿簲镄勬祴璇曟祦绋.鍦ˋTLAS涓鍒欎笉闇瑕佹祴璇曚汉锻樿冭槛娴嬭瘯纭浠,钥岀敱ATLAS绯荤粺镊锷ㄥ勭悊,杩欐牱娴嬭瘯浜哄憳灏辫兘澶熸洿锷犱笓蹇冨湴杩涜屾祴璇旷畻娉曞拰娴嬭瘯娴佺▼璁捐.ATLAS绯荤粺镄𪞝TE(镊锷ㄦ祴璇曡祫婧)涓鎻愪緵浜嗗ぇ閲忕殑娴嬭瘯璁惧,涓涓狝TE鑳借繘琛屽緢澶氭祴璇,杩欐牱涓崭粎绠鍖栦简娴嬭瘯绯荤粺镄勮勬ā,涔熷ぇ澶ф彁楂树简娴嬭瘯镄勬晥鐜囧拰姘村钩.
1.1.1 杩涜孉TLAS 娴嬭瘯镄勭‖浠剁幆澧
ATLAS璇瑷鍙浠ュ簲鐢ㄤ簬钖勭岖数瀛愮被鍜岄潪鐢电被浠鍣ㄨ惧囩殑娴嬭瘯,闅忕潃娴嬭瘯鎶链鍜屾祴璇曡惧囩殑涓嶆柇鍙戝𪾢,ATLAS璇瑷涔熷湪涓嶆柇镄勮繘琛屼慨鏀.鍦ㄩ伒寰狪EEE镙囧嗳镄勫熀纭涓,涓轰简鏂逛究鐢ㄦ埛镄勪娇鐢,ATLAS璇瑷镊韬鎻愪緵浜嗕竴绉岖殑镓╁𪾢链哄埗,浠ュ畬鎴愮敱浜庡綋鍓嶆爣鍑嗙殑闄愬埗钥屼笉鑳借繘琛岀殑娴嬭瘯.
ATLAS 璇瑷涓涓嶆彁渚涙祴璇旷‖浠朵俊鎭.鐢ㄦ埛浣跨敤杩囩▼涓,ATLAS绯荤粺镙规嵁绋嫔簭涓镄勮惧囩壒寰佷俊鎭,镊锷ㄥ湴杩涜岃惧囧垎閰嶅苟璋幂敤鐩稿簲镄勭‖浠舵搷浣沧潵瀹屾垚瀵筓UT(琚娴嬭瘯鍗曞厓)镄勬祴璇.鍙浠ヨ碅TLAS绯荤粺鏄涓涓瀵规祴璇曡蒋浠跺拰纭浠惰繘琛岀$悊镄勮櫄𨰾熸満,瀹冧笉浠呰礋璐e笰TLAS婧愮▼搴忕紪璇,鐢熸垚链哄櫒镰;杩樿佸规祴璇曡祫婧愯惧囱繘琛岀$悊,璁惧囩$悊鍖呮嫭:娣诲姞鍜屽垹闄よ惧,绠$悊琚娴嬭瘯鍗曞厓(UUT)鍒拌嚜锷ㄦ祴璇旷郴缁(ATE)璁惧囩殑寮鍏宠繛鎺ラ氲矾;姝ゅ,ATLAS绯荤粺杩樿佸湪娴嬭瘯镄勬墽琛岃繃绋嬩腑,澶勭悊娴嬭瘯涓浜х敓镄勪簨浠,骞剁洃鎺ф祴璇曡祫婧愮殑宸ヤ綔𨱍呭喌.
涓嫔浘鏄疉TLAS娴嬭瘯镄勭‖浠剁幆澧.
,ATLAS娴嬭瘯绯荤粺纭浠剁粨鏋勫浘
ATLAS娴嬭瘯绯荤粺纭浠朵富瑕佹湁浠ヤ笅鍑犱釜閮ㄥ垎缁勬垚:
ATE(auto test equipment):镊锷ㄦ祴璇曡惧,浣挎暣涓娴嬭瘯绯荤粺镄勬牳蹇,閲囩敤VXI鎴朓EEE488 镐荤嚎灏呜惧囱繛鎺ュ埌涓绘満涓.ATE链烘煖涓镄勮惧囦富瑕佸寘𨰾:1)娴嬭瘯浣跨敤镄勮祫婧,濡傚悇绉嶅彲鎺х洿娴佺数婧,鍙鎺т俊鍙峰彂鐢熷櫒,鏁板瓧涓囩敤琛,绀烘尝鍣ㄧ瓑;2)寮鍏宠惧,鐢ㄤ簬杩炴帴ATE澶栭儴镄勯樀鍒楁帴鍙e拰ATE鍐呴儴镄勮惧.3)ATE阒靛垪鎺ュ彛,鏄疉TE镄勮緭鍑烘帴鍙,澶栨帴娴嬭瘯浣跨敤镄勯傞厤鍣.
UUT(unit under test):琚娴嬭瘯鍗曞厓,鍗虫祴璇旷殑瀵硅薄,鍦ㄦ祴璇曡繃绋嬩腑鍜孉TE澶栭儴镄勯傞厤鍣ㄧ浉杩炴帴.
阃傞厤鍣:鐢ㄤ簬杩炴帴ATE鍜孶UT.鍦ㄦ祴璇曡繃绋嬩腑,ATE璐熻矗鎻愪緵缁橴UT (琚娴嬭瘯鍗曞厓)鐢垫簮,杈揿叆镄勬縺锷变俊鍙,骞朵粠UUT (琚娴嬭瘯鍗曞厓)涓璇诲嚭娴嬭瘯镣圭殑鍐呭.阃傞厤鍣ㄧ殑浣灭敤灏辨槸杩涜屼粠ATE(镊锷ㄦ祴璇曡惧)鍒癠UT(琚娴嬭瘯鍗曞厓)寤虹珛鐩稿簲镄勮繛鎺,骞舵牴鎹甎UT 𨱍呭喌杩涜岀数姘旇浆鎹,鐢典俊鍙峰埌闱炵数淇″彿镄勮浆鎹㈢瓑.
VXI 镐荤嚎绛:鐢ㄤ簬杩炴帴涓绘満鍜孉TE(镊锷ㄦ祴璇曡祫婧)涓镄勬祴璇曡惧,鍙鎺у紑鍏崇瓑,杩涜孉TE鎺у埗鍜屾暟鎹阃氢俊.
涓绘満:娴嬭瘯涓绘带璁$畻链,鍏朵笂闱㈣繍琛孉TLAS绯荤粺.
1.1.2.ATLAS 绯荤粺缁撴瀯
ATLAS绯荤粺璐熻矗缂栬疟镓ц孉TLAS缂栧啓镄勬祴璇旷▼搴,鎻愪緵璋冭瘯鐜澧,娴嬭瘯浠跨湡鐜澧,绠$悊ATE涓镄勫悇绉嶈惧囧拰寮鍏.ATLAS绯荤粺鐢盇TLAS缂栬疟鍣,ATLAS杩愯岀幆澧,ATLAS鐜澧幂$悊绋嫔簭,璁惧囧簱,镓╁𪾢鍗忚,镐荤嚎鎻忚堪鏂囦欢,璁惧囨弿杩版枃浠,寮鍏虫弿杩版枃浠跺拰阃傞厤鍣ㄦ弿杩版枃浠剁粍鎴.
绯荤粺镄勭粨鏋勫备笅锲炬墍绀:
ATLAS绯荤粺娴嬭瘯娴佺▼锲
ATLAS 鐜澧幂$悊绋嫔簭灏嗘祴璇曚娇鐢ㄧ殑璁惧囨弿杩版枃浠,寮鍏虫弿杩版枃浠,镐荤嚎鎻忚堪鏂囦欢鍜岄傞厤鍣ㄦ弿杩版枃浠惰浆鎹涓哄唴閮ㄧ殑璁惧囦俊鎭,寮鍏充俊鎭,镐荤嚎淇℃伅鍜岄傞厤鍣ㄥ紩鑴氢俊鎭.
ATLAS缂栬疟鍣ㄥ皢娴嬭瘯绋嫔簭缂栬疟鎴愬彲镓ц岀殑鐩镙囦唬镰,骞朵氦缁橝TLAS杩愯岀郴缁熸墽琛.鍦ㄧ紪璇戠殑杩囩▼涓,ATLAS缂栬疟鍣ㄦ牴鎹绯荤粺涓镄勮惧囦俊鎭,寮鍏充俊鎭,镐荤嚎鍜岄傞厤鍣ㄥ紩鑴氢俊鎭,杩涜屾祴璇曡惧囩殑鍒嗛厤,鐢熸垚鐩稿簲娴嬭瘯璁惧囩殑镎崭綔浠g爜,骞跺湪娴嬭瘯缁撴潫钖庡洖鏀惰惧.
ATLAS杩愯岀郴缁熻礋璐f墽琛岀洰镙囦唬镰,瀹屾垚链缁堢殑娴嬭瘯.鍦ㄨ繍琛岀郴缁熶腑瑕佺洃鎺ц惧囩殑镓ц屾儏鍐,澶勭悊𨱒ヨ嚜娴嬭瘯璁惧囩殑淇″彿鍜屼腑鏂,绠$悊娴嬭瘯镓ц岀殑杩涚▼,骞剁粰绋嫔簭锻樻彁渚涚浉搴旂殑璋冭瘯鐜澧.
鍦ㄦ墽琛屼腑,ATLAS镄勮繍琛岀郴缁熻皟鐢ㄨ惧喽LL搴扑腑镄勮惧囧嚱鏁版潵镓ц屾祴璇.璁惧囩$悊绯荤粺璐熻矗娣诲姞娴嬭瘯璁惧,淇鏀瑰紑鍏抽氲矾,淇鏀规祴璇曡惧囦俊鎭,鍒犻櫎娴嬭瘯璁惧囩瓑绛.娣诲姞鍜屼慨鏀逛竴涓璁惧囧垯鐩稿簲镄勪慨鏀硅惧喽LL搴.
ATLAS缂栬疟鍣ㄦ牴鎹婧愮▼搴忎腑璁惧囩殑鐗瑰緛淇℃伅,缁揿悎绯荤粺鍐呴儴镄勮惧囦俊鎭,寮曡剼淇℃伅鍜屽紑鍏充俊鎭,𨱒ユ煡镓捐惧.濡傛灉镓惧埌婊¤冻𨱒′欢镄勮惧,鍒椤垎閰嶈ヨ惧囧苟璋幂敤杩欎釜璁惧囩殑镎崭綔.濡傛灉镟存敼绯荤粺镄勮惧,姣斿傛坊锷犳柊璁惧囨垨淇鏀瑰綋鍓嶈惧囩殑镆愪簺淇℃伅,杩欐椂瑕佷慨鏀圭郴缁熷唴閮ㄧ殑璁惧囦俊鎭,浠ヤ究鍦ˋTLAS缂栬疟镞惰兘澶熸垒鍒版弧瓒虫浔浠剁殑璁惧.
1.2 链鏂囧畬鎴愮殑宸ヤ綔
链鏂囦粙缁岖殑宸ヤ綔鏄鎴戜滑镄勯”鐩钬斺擜TLAS绯荤粺镄勪竴閮ㄥ垎,涓昏佹槸ATLAS璇瑷镄勮涔夊垎鏋愰儴鍒,缁椤嚭浜咥TLAS褰㈠纺鍖栬涔,ATLAS缂栬疟鐜澧,杩愯岀幆澧,ATLAS镄勫姩镐佽涔夊垎鏋愭妧链鍜岄润镐佽涔夊垎鏋愭妧链.链鏂囧畬鎴愮殑宸ヤ綔链:
瀹炵幇浜咥TLAS璇瑷镄勮涔夊垎鏋
鍒╃敤闱㈠悜瀵硅薄镄勬妧链痆5][6]瑙e喅浜咥TLAS瑕佹眰镄勮涔夋墿灞曞拰璁惧囨棤鍏虫
阒愯堪浜咥TLAS绯荤粺镄勭粍鎴愬拰钖勯儴鍒嗙殑锷熻兘
瀹炵幇浜咥TLAS镄勮涔夊垎鏋愬櫒[7],缁椤嚭浜咥TLAS闱欐佽涔夋镆ュ拰锷ㄦ佽涔夋镆ョ殑鍐呭,骞跺埄鐢ㄥ睘镐ф枃娉曞姞浠ユ弿杩
绗浜岀珷 ATLAS璇瑷
2.1 ATLAS 2000
ATLAS鏄涓涓鍗佸垎链夎叮镄勮瑷,涓庝竴鑸镄勮繃绋嫔纺璇瑷涓嶅悓,ATLAS镟存帴杩戜簬镊铹惰瑷.鍦ㄨ繖涓璇瑷涓姣忎竴涓璇鍙ョ敱锷ㄨ瘝,钖嶈瘝鍜屽畠浠镄勪慨楗颁俊鎭缁勬垚,涓涓狝TLAS璇鍙ヤ腑镊冲皯鍖呭惈涓涓锷ㄨ瘝鍜屼竴涓钖嶈瘝[2].
ATLAS2000璇鍙ョ粨鏋勫备笅锲炬墍绀:
锲哄畾锘 鍒嗛殧绗
,
锲哄畾锘熶腑镄勬爣蹇楀烟,鐢ㄦ潵璇存槑杩欐浔璇鍙ョ殑钖涔,濡傛灉蹇界暐镙囧织璇存槑鏄涓𨱒℃櫘阃氱殑璇鍙,鏄娉ㄩ喷璇鍙ュ垯镙囧织涓"C" 鎴"B",濡傛灉鏄"E"琛ㄧず鍙浠ヤ粠镙囧织镄勮繖𨱒¤鍙ュ紑濮嬫墽琛屾祴璇,钥屼笌鍓嶉溃镄勬祴璇曟棤鍏.
VERB锷ㄨ瘝,鍖呮嫭ATLAS涓镄勫姩璇嶅拰锷ㄨ瘝淇楗拌瘝.锷ㄨ瘝链:APPLY,DEFINE,DECLARE,REQUIRE,DISCONNECT,REMOVE,DO绛.锷ㄨ瘝镄勪慨楗拌瘝鐢ㄦ潵杈呭姪锷ㄨ瘝濡:"DO ,SIMULTANEOUS" 璇鍙ヤ腑镄凷IMULANEOUS,淇″彿璇鍙ヤ腑镄"THEN RESET"绛.
鍒嗛殧绗,鍦ˋTLAS涓涓嶅悓镄勮娉曟垚鍒嗙敱鍒嗛殧绗","闅斿紑.
姣忎竴𨱒¢兘链変竴涓缁堟㈢"$".
姣忎釜璇鍙ョ殑璇鍙ュ墿浣欓儴鍒嗘牴鎹𨱍呭喌钥屽畾.
ATLAS2000缁撴瀯:
ATLAS2000 鏄涓涓链夊氩眰缁撴瀯镄勮瑷[4],涓涓狝TLAS绋嫔簭鐢辨牳瀛愬师璇,璇鍙,妯″瀷,TTF鍜屾ā鍧楃粍鎴.ATLAS镙稿瓙閮ㄥ垎鍜孉TLAS铡熻鏋勬垚浜呜繖涓璇瑷镄勫熀纭,鐢ㄦ埛阃氲繃棰勫畾涔夊拰杩欎簺锘烘湰璇绱犳潵寤虹珛娴嬭瘯椤圭洰镄勯渶姹.妯″瀷缁撴瀯浣跨敤鎴烽氲繃瀵瑰簳灞傞儴浠剁殑镎崭綔缁勫悎,鎶借薄鍑哄叿链夋洿楂桦眰娆$殑缁撴瀯骞跺规洿澶嶆潅镄勬祴璇曞姛鑳藉姞浠ユ弿杩.TTF(Test Technology Frameworks)娴嬭瘯鎶链妗嗘灦,ATLAS2000娴嬭瘯鎶链妗嗘灦鍖呮嫭骞跺畾涔変竴浜涚敱ATLAS2000锘虹缁勬垚镄勭壒娈婄殑娴嬭瘯鐜澧.妯″潡鐢ㄦ潵灏佽呴偅浜涘彲閲嶅崭娇鐢ㄧ殑娴嬭瘯浠g爜.鍏蜂綋缁撴瀯濡备笅锲炬墍绀:
ATLAS 2000 缁撴瀯锲
娉ㄩ喷:
ATLAS镙稿瓙閮ㄥ垎(NUCLEUS)瀹氢箟浜咥TLAS璇瑷鍏稿瀷镄勬ц兘鍜屽姛鑳.ATLAS镙稿瓙鐢卞舰寮忚娉,淇濈暀瀛楀拰瑙勫垯涓変釜閮ㄥ垎缁勬垚.
ATLAS铡熻(PRIMITIVES)鏄鎻忚堪鍜岃存槑ATLAS淇″彿,锷ㄤ綔,灞炴у拰镐ц兘蹇呴渶镄勫厓绱.杩欎簺锘烘湰鍏幂礌涓嶈兘鍐嶅垎,鍏朵腑鍖呮嫭钖嶈瘝,钖嶈瘝淇楗拌瘝,锷ㄨ瘝,锷ㄨ瘝淇楗拌瘝,镎崭綔绗︿互鍙婂畠浠镄勫姛鑳藉畾涔.
ATLAS妯″瀷(MODELS)鏄涓绯诲垪鍑芥暟鍜岃繃绋嬬殑琛ㄧず,鍦ˋTLAS涓,妯″瀷鐢ㄦ潵鎻忚堪娴嬭瘯璁惧囧拰琚娴嬭瘯鍗曞厓(UUT)镄勭壒寰.ATLAS妯″瀷鏄鏂囨硶鍏幂礌镄勬弿杩板熀纭,ATLAS鍏抽敭瀛楁牴鎹瓵TLAS2000妯″瀷𨱒ュ畾涔,镓链夌殑鍏抽敭瀛楀繀椤绘ā鍨嫔寲.涓镞︿竴涓妯″瀷琚瀹氢箟骞朵笖鎴愪负娴嬭瘯鎶链妗嗘灦(TTF)镄勪竴閮ㄥ垎,灏卞彲浠ュ湪ATLAS镄勮鍙ヤ腑浣滀负涓涓鍏抽敭瀛楁潵浣跨敤.
ATLAS镄勬ā鍧(MODULE)鏄鍖呭惈鍦ˋTLAS绋嫔簭涓镄勪竴涓瀹炰綋,鍙浠ヨ村畠鏄涓涓鍖呭惈ATLAS杩囩▼鍜岄潪ATLAS杩囩▼镄勫瑰櫒.鍦ˋTLAS涓鐢"INCLUDE"璇鍙ユ潵浣跨敤妯″潡.鍦ㄦā鍧楀唴阃氲繃澹版槑杩囩▼镄勫睘镐ф槸鍏ㄥ眬镄勮缮鏄灞閮ㄧ殑,𨱒ュ喅瀹氲繃绋嬬殑浣灭敤锘,鍏ㄥ眬镄勮繃绋嫔彲浠ュ湪妯″潡澶栦娇鐢.鍦ㄦā鍧楀唴閮ㄥ彲浣跨敤链妯″潡瀹氢箟镄勬墍链夎繃绋,阃氲繃瀵瑰叾瀹幂殑妯″潡杩涜屽紩鐢ㄥ0鏄,涔熷彲浣跨敤澶栭儴杩囩▼.
2.2 ATLAS 璇涔夊垎鏋愮壒镣
ATLAS璇瑷鏄鐢ㄤ簬娴嬭瘯镄勬爣鍑呜瑷.灏界″湪ATLAS璇瑷涓娌℃湁鍏充簬娴嬭瘯璁惧囩‖浠剁殑鍏蜂綋淇℃伅,濡傝惧囩殑鐗╃悊鍦板潃,璁惧囬┍锷ㄧ▼搴忓拰璁惧囩殑镎崭綔鍑芥暟绛,浣嗘槸ATLAS鎻愪緵浜嗘弿杩拌惧囩壒寰佺殑铡熻鍜屾ā鍨媅1][3],鍏朵腑鍖呮嫭:钖嶈瘝,锷ㄨ瘝,淇楗拌瘝,杩炴帴鍜屼俊鍙蜂缭鐣椤瓧绛.ATLAS缂栬疟鍣ㄦf槸镙规嵁鍦ˋTLAS绋嫔簭涓镄勭敱杩欎簺铡熻鍜屾ā鍨嬬粍鎴愮殑淇℃伅,𨱒ヨ嚜锷ㄥ湴瀹屾垚璁惧囨煡镓,璁惧囧垎閰,铡婚厤鍜屾搷浣.
鍜屽父瑙佺殑绋嫔簭璇瑷鐩告瘆,ATLAS链澶х殑鐗圭偣灏辨槸鍖呮嫭浜嗕竴浜涗笌娴嬭瘯璁惧囨垨琚娴嫔崟鍏幂浉鍏崇殑淇℃伅鍜岃鍙[1],钥屽规祴璇曡惧囱繘琛屾搷浣滀篃灏辨槸ATLAS璇涔夌殑閲嶈侀儴鍒.鐜板湪鎴戜滑𨱒ュ规瘆涓涓闱濧TLAS璇瑷鍜孉TLAS璇瑷鏄濡备綍缂栧啓娴嬭瘯绋嫔簭镄.
鎴戜滑浠嶤璇瑷镄勬祴璇旷▼搴忓拰ATLAS璇瑷缂栧啓镄勫悓镙峰姛鑳界殑绋嫔簭杩涜屼竴涓嫔规瘆.
渚:灏嗕竴涓鐢靛帇鏄28v镄勭洿娴佺数婧愯繛鎺ュ埌琚娴嬭瘯璁惧(UUT)涓.
瀹炵幇:
鐢–璇瑷缂栧啓娴嬭瘯绋嫔簭镄勫叿浣撴搷浣沧ラゆ槸:棣栧厛灏呜佷娇鐢ㄧ殑鐢垫簮杩炴帴鍒版祴璇旷郴缁熶笂,灏嗙数婧愬埌UUT镄勫紑鍏崇疆涓鸿繛鎺,铹跺悗璁剧疆鐢垫簮鐢靛帇涓28V,鎺ヤ笅𨱒ユ镆ョ数婧愮殑杈揿嚭鐢靛帇鏄钖︽槸28V,宸ヤ綔鐢垫祦鏄钖﹀皬浜1A,濡傛灉婊¤冻𨱒′欢鍒椤厑璁歌ョ数婧愬伐浣.
鍦ˋTLAS涓,阃氲繃涓𨱒$亩鍗旷殑璇鍙ュ氨鍙浠ュ畬鎴愪简杩欎簺镎崭綔,鍦ˋTLAS绋嫔簭涓涓嶉渶瑕佹寚鍑鸿佷娇鐢ㄥ摢涓涓鐢垫簮,鎴戜滑鍙浠ョ湅鍑篈TLAS鍜孋璇瑷镄勪笉钖屼箣澶.鍦–镄勭▼搴忎腑鐢辨祴璇曞憳鎸囧畾瑕佷娇鐢ㄧ殑鐢垫簮骞惰繛鎺ヨ繖涓鐢垫簮镄勪娇鐢ㄧ殑寮鍏宠繖镙锋潵瀹屾垚娴嬭瘯,鍦ˋTLAS杩欎簺宸ヤ綔涓鍒欑敱缂栬疟鍣ㄨ嚜锷ㄥ畬鎴.
C璇瑷鍜孉TLAS璇瑷缂栧啓镄勪唬镰佹瘆杈冨备笅:
鎽樿嚜锛歴oftlab.jlu.e.cn/temp/thesis/2004liulei.doc