公司主营产品图展示
产品优势
1:国外专业的供货渠道,具有价格优势
2:产品质量保证,让您售后无忧
3:全国快递包邮
产品详情介绍
MTL 8937-HN计数模块
PCI BIOS功能
特殊PCI BIOS功能为Universe芯片提供软件接口,提供PCI到VMEbus接口。使用函数调用这些PCI BIOS函数以及子功能代码。用户为所需的功能和子功能设置主机处理器的寄存器,并调用PCI BIOS软件。PCI BIOS功能代码为B1h。使用进位标志([CF])和特定于调用的子函数的寄存器返回状态。
通过中断为16位调用者提供对PCI BIOS特殊功能的访问1Ah。通过32位调用提供32位(即保护模式)访问保护模式入口点。
呼叫约定PCI BIOS功能保留所有寄存器和标志,但用于返回参数的寄存器和标志除外。进位标志[CF]将如图所示改变,以指示完成状态。这个调用例程将返回,中断标志未修改,中断将在函数执行期间不启用。这些是重入例程,需要1024个堆栈空间和堆栈段的字节大小必须与代码段。
PCI BIOS提供16位实时和保护模式接口和32位保护模式接口。
16位接口
16位接口通过Int 1Ah软件中断提供。PCI BIOS Int1Ah接口在实模式、虚拟-86模式或16:16保护模式下运行。这个Int 1Ah入口点仅支持16位代码。
32位接口保护模式接口支持32位保护模式调用者。保护模式通过中的保护模式入口点调用来访问PCI BIOS接口PCI BIOS。构建段描述符所需的入口点和信息由BIOS32服务目录提供。32位调用者调用PCIBIOS例程使用调用FAR。BIOS32服务目录在BIOS中以连续的16字节数据实现结构,从物理地址范围中的某个16字节边界开始,通过对从服务数据结构获得的入口点进行FAR调用来访问BIOS32服务目录。关于调用有几个要求必须满足的环境。CS代码段选择器和DS数据段选择器必须设置为包含包含包含入口点的物理页面,以及紧接着的物理页面。它们也必须具有相同的基础。党卫军堆栈段选择器必须为32位,并提供至少1 KB的堆栈空间。调用环境还必须允许访问I/O空间。BIOS32服务目录提供单个函数调用以定位PCI BIOS服务函数的所有参数都在寄存器中传递。参数说明如下:如下所示。调用返回三个值。第一个是PCI BIOS服务的基本物理地址,第二个是服务的长度,第三个是服务的入口点,编码为与基础的偏移。第一和第二值可用于构建用于访问的代码段选择器和数据段选择器服务。
PCI BIOS Functions
Special PCI BIOS functions provide a software interface to the Universe chip, providing
the PCI-to-VMEbus interface. These PCI BIOS functions are invoked using a function
and subfunction code. Users set up the host processor's registers for the function and subfunction desired and call the PCI BIOS software. The PCI BIOS function code is B1h.
Status is returned using the Carry flag ([CF]) and registers specific to the subfunction invoked.
Access to the PCI BIOS special functions for 16-bit callers is provided through interrupt
1Ah. Thirty-two bit (i.e., protect mode) access is provided by calling through a 32-bit
protect mode entry point.
Calling Conventions
The PCI BIOS functions preserve all registers and flags except those used for return parameters. The Carry Flag [CF] will be altered as shown to indicate completion status. The
calling routine will be returned to with the interrupt flag unmodified and interrupts will
not be enabled during function execution. These are re-entrant routines require 1024
bytes of stack space and the stack segment must be the same size (i.e., 16- or 32-bit) as
the code segment.
The PCI BIOS provides a 16-bit real and protect mode interface and a 32-bit protect
mode interface.
16-Bit Interface
The 16-bit interface is provided through the Int 1Ah software interrupt. The PCI BIOS Int
1Ah interface operates in either real mode, virtual-86 mode, or 16:16 protect mode. The
Int 1Ah entry point supports 16-bit code only.
32-Bit Interface
The protected mode interface supports 32-bit protect mode callers. The protected mode
PCI BIOS interface is accessed by calling through a protected mode entry point in the
PCI BIOS. The entry point and information needed for building the segment descriptors
are provided by the BIOS32 Service Directory. Thirty-two bit callers invoke the PCI
BIOS routines using CALL FAR.
The BIOS32 Service Directory is implemented in the BIOS in a contiguous 16-byte data
structure, beginning on a 16-byte boundary somewhere in the physical address range The BIOS32 Service Directory is accessed by doing a FAR CALL to the entry point obtained from the Service data structure. There are several requirements about the calling
environment that must be met. The CS code segment selector and the DS data segment
selector must be set up to encompass the physical page holding the entry point as well as
the immediately following physical page. They must also have the same base. The SS
stack segment selector must be 32-bit and provide at least 1 KB of stack space. The calling environment must also allow access to I/O space.
The BIOS32 Service Directory provides a single function call to locate the PCI BIOS
service. All parameters to the function are passed in registers. Parameter descriptions are
provided below. Three values are returned by the call. The first is the base physical address of the PCI BIOS service, the second is the length of the service, and the third is the
entry point to the service encoded as an offset from the base. The first and second values
can be used to build the code segment selector and data segment selector for accessing
the service.