method for driving control of board using a union driver for PCI board and recorded media for PCI bo
专利摘要:
PURPOSE: A board drive controlling method and a record media for an integrated driver are provided to use the integrated driver for a PCI(Peripheral Component Interconnect) board which can be driven in the WindowsNT, Windows2000 and WindowsXP as a device driver. CONSTITUTION: A PCI bus and a slot of a main board are scanned, the kinds of installed boards are determined, and data on the installed boards is stored(S1, S2). The integrated driver searches for the data on the installed boards, and allocated resources to the installed boards according to their kinds(S3). A service program, managed by an OS, is installed for enabling the installed boards to transmit or receive upper level service programs and events among themselves(S4). While the service programs are installed, the integrated driver downloads a download function for driving a corresponding board(S5). If an instruction is transmitted by an application program or a service program, a corresponding function is called according to the kind of the board and a corresponding task is performed(S7). If an event is transmitted by a firmware installed in relation with a drive of the installed boards, a corresponding function is called according to the kind of the board and a task corresponding to the event is performed(S9). 公开号:KR20030084438A 申请号:KR1020020023150 申请日:2002-04-26 公开日:2003-11-01 发明作者:전체훈 申请人:서울통신기술 주식회사; IPC主号:
专利说明:
Method for driving control of board using a union driver for PCI board and recorded media for PCI board union driver} [11] The present invention relates to a board driving control method using an integrated driver for a PCI board, and a recording medium for an integrated board for a PCI board. Specifically, the device driver for controlling a PCI board in the NetCTi (brand name) product family is a WindowsNT, Windows2000, and Windows XP operating system. The present invention relates to a board driving control method using an integrated driver for a PCI board and a recording medium for a PCI board integrated driver. [12] The Industry Standard Architecture (ISA) bus, sometimes called the "AT bus", is the most popular and widely used PC bus design that remains today. This is a 16-bit data bus based on a 98-pin expansion connector design. As in most bus designs, the ISA bus uses double-sided connectors with rows of pins. When you insert an expansion card, each connector actually has two connections: one on the A side of the board and one on the B side. [13] Peripheral Component Interconnect (PCI), on the other hand, is an interconnection system between devices attached to expansion slots located close to the microprocessor for high speed operation. With PCI, computers can support new PCI cards and ISA expansion cards, the most common type of expansion cards available today. Early PCI designs by Intel were similar to the VESA localbus, but since PCI 2.0 they are no longer localbuses and are designed independently of the microprocessor design. PCI is designed to synchronize to microprocessor clock rates in the 20-33 MHz range. [14] PCI is now installed in most new desktop computers, including Power Pentium-based systems as well as Intel Pentium processor-based systems. PCI transmits 32 bits at a time on 124 pin connections and 64 bits on the extended 188 pin connection. PCI uses all dynamic paths to carry address and data signals, sending the address in the first clock cycle and then sending data. When sending a large amount of data, it is also possible to send the start address in the first cycle and then continue the data transfer for a certain number of cycles. [15] 1 shows a conceptual diagram of an ISA driver. Referring to FIG. 1, referring to FIG. 2, in order to use a mounted PCI board by mounting one PCI board in a slot of a system, the application program 1 is placed on the top, and the application program is operated below. A dynamic link library (hereinafter referred to as a DLL) 2 for invoking functions necessary for performing the operation is located, and a service program 3 for performing various services in association with the DLL 2 is located below. do. In this service program, each ISA type VPM ISA driver (4), SPM ISA driver (5), and DPM ISA driver (6) are located to manage the ISA type VPM, SPM, and DPM boards. [16] There are different drivers for ISA such as VPM, SPM, and DPM for each board type, so I / O requests can be handled only for each board. [17] As described above, the conventional driver is a driver loaded in the Windos NT family, and the driver varies depending on the type of board (VPM, SPM, DPM). [18] That is, debug version and release version of VPMDRV.SYS on VPM board, debug version and release version of SPMDRV.SYS on VPM board, and debug version of DPMDRV.SYS on DPM board. ) There are six drivers in total. [19] Here, the debug version is a version in which a message is output to track the progress, and the release version is a version in which a message is not output for site distribution. [20] This causes a lot of administrative difficulties because installation, removal, version control, site management, and new technology or error correction require driver-specific modifications in the service program as well as each driver. [21] For example, even if only one line is modified in the driver source, 12 documents should be prepared because the driver-specific ETR, TI, self test result, and verification request should be written. If the service program is modified, 16 documents should be written. Should be. Therefore, there is a problem that version control and efficiency are greatly reduced. [22] In addition, if there are problems with the site, there are several drivers, which may cause inconvenience and confusion for customers when uninstalling and updating drivers, which may cause difficulty in customer support as well as decrease the recognition of the product. It became. [23] SUMMARY OF THE INVENTION The present invention has been made in view of the above-mentioned problems and has been made by the necessity as described above, and an object thereof is to provide a board driving control method using an integrated driver for a PCI board and a recording medium for an integrated PCI board driver. [1] BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a view for explaining driving control of a board using a conventional ISA driver. [2] 2 is a view for explaining the control of the driving of the board using the integrated driver for the PCI board according to the present invention. [3] 3 is a device extension structure diagram required for the PCI board integrated driver. [4] 4 is a flowchart of a board driving control method using an integrated driver for a PCI board according to the present invention; [5] <Description of Symbols for Main Parts of Drawings> [6] 10: application program 2: DLL [7] 3: service program 4: VPM ISA driver [8] 5: SPM ISA driver 6: DPM ISA driver [9] 10: application program 20: DLL [10] 30: Service program 40: Integrated driver for PCI board [24] Board driving control method using an integrated driver for a PCI board according to the present invention for achieving this object is mounted on the main board using an integrated driver for the PCI board for storing the driving information for integrally driving one or more PCI boards. A method of controlling the operation of one or more PCI boards, comprising: scanning a PCI bus and a slot of a main board to search for a mounted board, determining the type of the mounted board, and storing information of the mounted board; and Searching for information on the mounting board in the integrated driver for the board and allocating resources by the type of the mounted board; and when resources are allocated to each board, the mounting board may exchange events with a higher service program. Installing a service program managed by the user, and installing the service program Downloading a download function for driving the board from the integrated driver for the board, and when the download function is downloaded: a) When a command is transmitted from an application program or a service program, Call to perform the operation according to the command, and b) if the event is delivered from the firmware installed in connection with the driving of the mounting board, calling the corresponding function according to the type of board to perform the operation corresponding to the event do. [25] In addition, the recording medium for the PCI board integrated driver according to the present invention is a recording medium in which data for electromagnetically or optically recording data for integrally driving one or more PCI boards which are executed by a digital reproducing apparatus and mounted on a main board is digital. When the replay device scans the PCI bus and the slot of the main board and finds the mounted board, the data for determining the mounted board type and the data for allocating resources for each board type with respect to the mounted board. And data for installing a service program managed by an operating system so that the mounting boards can exchange events with higher service programs while download functions are downloaded, and download to the playback apparatus to drive the mounted board. Download function data to do, application program and service When a command is transmitted from an application program, data for performing a task according to the command by calling the corresponding function according to the type of the board, and when an event is transmitted from the installed firmware related to the driving of the mounting board, the type of the board As a result, data is recorded to call the function to perform the action corresponding to the event. [26] Hereinafter, the present invention will be described with reference to the accompanying drawings. [27] 2 is a view for explaining the driving control of the board using the integrated driver for the PCI board according to the present invention. Referring to FIG. 2, in order to mount one PCI board in a slot of a system and use the mounted PCI board, the application program 10 is placed on the top and the application program 10 is required to operate below the PCI board. A dynamic link library 20 for calling functions is located, and a service program 30 for performing various services in association with the dynamic link library is located below. In this service program, an integrated PCI driver 40 for integrated management of PCI-type VPM, SPM, and DPM boards is located. [28] Accordingly, the service program needs to exchange data with only one PCI driver, unlike the conventional ISA driver. [29] The integrated PCI driver 40 includes data for integrally driving one or more PCI boards which are executed by a digital player and mounted on a main board. That is, when a board is found by scanning a PCI bus and a slot of a main board in a digital player, data for determining the type of the mounted board is allocated, and resources are allocated to the mounted board by board type. Data to be downloaded, download function data to be downloaded to the playback device to drive the mounted board, and a service program managed by the operating system so that the mounting boards can exchange events with higher service programs while the download functions are downloaded. Data to install the program, and when the command is transmitted from the application or service program, the data to perform the operation according to the command by calling the corresponding function according to the type of the board, and from the firmware installed in connection with the driving of the mounting board. If an event is delivered, the type of board Therefore, it consists of data to call the function to perform the task corresponding to the event. [30] 3 illustrates a device extension structure required for the PCI board integrated driver. Referring to FIG. 3, the boardtype is a field indicating the type of board, and the board types include VPM, SPM, and DPM. boardID is a field indicating an ID of 0-15, such as 04A, 04B, 16A, 08B. crruntboard is a field indicating the currently selected board. Event is a field representing an event for communicating with a service program. PciBar is a field representing information about memory resources. BusNumber is a field indicating the bus number of the PCI, slotNumber is a field indicating the slot of the board. [31] Let's take a look at the procedure to control the operation of the mounted PCI board using the PCI board integrated driver. 4 is a flowchart illustrating a board driving control method using an integrated driver for a PCI board according to the present invention. [32] First, let's look at how to recognize, determine, and install PCI boards. [33] First, scan all PCI buses and slots of the main board (SCAN) to find the board. (S1) To do this, use HalAssignSlotResourcees () to scan all PCI buses and slots of the main board to find the board. [34] Each PCI board has header information that tells you which PCI board the PCI board is on. That is, it includes type information of whether the mounted PCI board is a VPM board, an SPM board, or a DPM board, and version information of each board. [35] When the board mounted in the slot is found, the header information is read and the board type is determined and stored in the internal table (S2). In other words, if a board is found, Buffer.u.type0.SubSystemID of the PCI board header is read and the board type is determined and stored in the internal table called pExtension-> Boardtype [BoardTotCount]. [36] Next, resources of different sizes are allocated for each board type (S3). [37] PciBarSpaceMAP () function allocates resources of different size for each board type. Refer to the internal table pExtension-> Boardtype [BoardTotCount] and map the allocated virtual address to DPRAM for each board. [38] For VPM boards, the data area contains VBoard_Info [boardId [boardindex]]. Map using the message DPRAM2 = (VCOM_BUFF2 *) (pdx-> PciBar [boardindex] [BarIndex]. PVa); [39] The command area is mapped using the message VBoard_Info [boardId [boardindex]]. DPRAM = (VCOM_BUFF *) (pdx-> PciBar [boardindex] [BarIndex] .pVa) ;. [40] For SPM boards, the data area contains SBoard_Info [boardId [boardindex]]. Map using the message DPRAM2 = (SCOM_BUFF2 *) (pdx-> PciBar [boardindex] [BarIndex]. PVa); [41] The command area is mapped using the message SBoard_Info [boardId [boardindex]]. DPRAM = (SCOM_BUFF *) (pdx-> PciBar [boardindex] [BarIndex] .pVa) ;. [42] For DPM boards, the data area contains DBoard_Info [boardId [boardindex]]. DPRAM2 = (DCOM_BUFF2 *) (pdx-> PciBar [boardindex] [BarIndex]. PVa); [43] The command area is mapped using the message DBoard_Info [boardId [boardindex]]. DPRAM = (DCOM_BUFF *) (pdx-> PciBar [boardindex] [BarIndex] .pVa) ;. [44] Next, install a service program managed by the operating system to exchange events with the higher service program (S4). The function used at this time is as follows. [45] RtlIniUnicodeString (& eventName, L "\ BaseNameObjects \ NETPCIEVENT"); [46] pExtension-> Even = IoCreateNotificationEvent) (& eventName, & pExtension-> Handle); [47] It keeps calling every 10ms until the function above returns true, and keep trying until it's installed. [48] Then, the internal table pExtension-> Boardtype [BoardTotCount] is examined and the functions corresponding to each board are downloaded in the following order (S5). [49] For VPM boards: [50] VpmdrvFWDStartStart (WORD index, PDEVICE_EXTENSION pExtension); [51] VpmdrvDSPSWDStartStart (WORD index, PDEVICE_EXTENSION pExtension); [52] VpmdrvDSPGMDownStart (WORD index, PDEVICE_EXTENSION pExtension); [53] VpmdrvSyspareDownStart (WORD index, PDEVICE_EXTENSION pExtension); [54] For SPM boards, [55] SpmdrvFWDStartStart (WORD index, PDEVICE_EXTENSION pExtension); [56] Spmdrv SyspareDownStart (WORD index, PDEVICE_EXTENSION pExtension); [57] For DPM, [58] DpmdrvFWDownStart (WORD index, PDEVICE_EXTENSION pExtension); [59] DpmdrvSyspareDownStart (WORD index, PDEVICE_EXTENSION pExtension); [60] DpmdrvDSPSWDStartStart (WORD index, PDEVICE_EXTENSION pExtension); [61] DpmdrvDSPGMDStartStart (WORD index, PDEVICE_EXTENSION pExtension); [62] DpmdrvE1SWDStartStart (WORD index, PDEVICE_EXTENSION pExtension); [63] DpmdrvE1PGMDownStart (WORD index, PDEVICE_EXTENSION pExtension); [64] Then, it is determined whether or not a command is transmitted from an application program or a service program (S6), and when delivered, the corresponding function is called according to each board to process a command issued from the application program or a service program. (S7). At this time, different functions are called according to the board type. [65] In the case of VPM, the functions that can be called are: [66] VpmdrvIoctlCommand (); [67] VpmdrvIoctlReadbdinform (); [68] VpmdrvIoctlParaupdata (); [69] VpmdrvIoctlSenddata (); [70] VpmdrvIoctlReceivedata (); [71] VpmdrvIoctlRecevent (); [72] VpmdrvIoctlFwdown (); [73] VpmdrvIoctlParaset (); [74] VpmdrvIoctlPararead (); [75] VpmdrvIoctlDspswdown (); [76] VpmdrvIoctlDsppgmdown (); [77] VpmdrvIoctlBoardreset (); [78] VpmdrvIoctlSwndCid (); [79] VpmdrvIoctlRceiveCid (); [80] VpmdrvIoctlParaDown (); [81] VpmdrvIoctlReceiveFIF (); [82] The functions that can be called in the case of SPM board are as follows. [83] SpmdrvIoctlCommand (); [84] SpmdrvIoctlReadbdinform (); [85] SpmdrvIoctlParaupdata (); [86] SpmdrvIoctlBoardreset (); [87] SpmdrvIoctlParaset (); [88] SpmdrvIoctlBoarddebug (); [89] SpmdrvIoctlParaDown (); [90] In the case of DPM, the functions that can be called are: [91] DpmdrvIoctlCommand (); [92] DpmdrvIoctlReadbdinform (); [93] DpmdrvIoctlParaupdata (); [94] DpmdrvIoctlSenddata (); [95] DpmdrvIoctlReceivedata (); [96] DpmdrvIoctlRecevent (); [97] DpmdrvIoctlFwdown (); [98] DpmdrvIoctlParaset (); [99] DpmdrvIoctlPararead (); [100] DpmdrvIoctlDspswdown (); [101] DpmdrvIoctlDsppgmdown (); [102] DpmdrvIoctlBoarddebug (); [103] DpmdrvIoctlE1swdown (); [104] DpmdrvIoctlE1pgmdown (); [105] DpmdrvIoctlSysparadown (); [106] Next, it is determined whether there is an event generated in the firmware (S8), and when an event occurs, a different function is called according to the board type to perform an operation corresponding to the corresponding event (S9). [107] Refer to pExtension-> Boardtype [BoardTotCont] and execute the function per board. [108] For VPM, VpmdrvControlEvent (); Executed every 10 ms to perform I / O processing. [109] For SPM, SpmdrvControlEvent (); Executed every 10 ms to perform I / O processing. [110] For DPM, DpmdrvControlEvent (); Executed every 10 ms to perform I / O processing. [111] When one process is performed as described above, a procedure is performed to determine whether there is a command received again at a predetermined time (S6), to perform a command (S7), to determine whether an event occurs (S8), and to perform an operation corresponding to an event. To perform repeatedly (S9). [112] According to the present invention, a PCI drive capable of processing up to 132 megabytes per second results in a speed improvement of up to 16 times over an ISA type driver processing 8M bytes per second. [113] In addition, the individual driver for ISA had to write 12 documents when the driver version was changed, but the integrated driver for PCI according to the present invention required only four documents to be produced, resulting in an improvement in work efficiency and a single file. It is easy to update the driver because it is updated. [114] In addition, the integrated driver according to the present invention at the time of site and customer support is a single driver, thereby reducing confusion and inconvenience of customers when uninstalling and updating drivers, as well as the difficulty of customer support as well as preventing the recognition of the product.
权利要求:
Claims (6) [1" claim-type="Currently amended] As a method of controlling the driving of one or more PCI boards mounted on the main board by using an integrated driver for the PCI board, which stores driving information for integrally driving one or more PCI boards. Scanning the PCI bus and slots of the main board to search for the mounted board, determining the type of the mounted board, and storing the mounted board information; Retrieving information of the mounting board from the integrated driver for the PCI board and allocating resources according to the type of the mounted board; Installing a service program managed by an operating system to allow the mounting boards to exchange events with upper service programs when resources are allocated to each board; Downloading a download function for driving the board from the integrated driver for the PCI board while the service program is installed; With the download function downloaded, a) When a command is transmitted from an application program or a service program, the corresponding function is called according to the type of the board to perform an operation according to the command, b) When an event is transmitted from the firmware installed in connection with driving the mounting board, a board using an integrated driver for a PCI board performing a step corresponding to the event by calling a corresponding function according to the type of board. Drive control method. [2" claim-type="Currently amended] The method of claim 1, wherein the storing of the mounting board information comprises: The board driving control method using the integrated driver for the PCI board to determine the type of the board by reading the header information of the retrieved board. [3" claim-type="Currently amended] The method of claim 1, wherein the PCI board, Board driving control method using an integrated driver for a PCI board including at least one of the VPM, SPM, DPM board. [4" claim-type="Currently amended] A recording medium in which data for electromagnetically or optically recorded is executed by a digital player to integrally drive one or more PCI boards mounted on a main board. The digital reproducing apparatus scans the PCI bus and the slot of the main board, and when the mounted board is found, data for determining the type of the mounted board; Data for allocating resources for each board of the mounted board; Data for installing a service program managed by an operating system so that the mounting boards can exchange events with a higher service program while the download functions are downloaded; Download function data that must be downloaded to the playback device to drive the mounted board; When a command is transmitted from an application program or a service program, data for performing a task according to the command by calling a corresponding function according to the type of the board, When an event is transmitted from the firmware installed in connection with the driving of the mounting board, a recording medium for a PCI board integrated driver recorded with data for calling the function according to the type of the board to perform a task corresponding to the event. [5" claim-type="Currently amended] The data for determining the type of the mounted board according to claim 4, PCI board integrated driver recording medium that is a data for determining the type of the board by reading the header information of the retrieved board. [6" claim-type="Currently amended] The method of claim 4, wherein the PCI board, Recording medium for PCI board integrated driver including at least one of the VPM, SPM, DPM board.
类似技术:
公开号 | 公开日 | 专利标题 US5701476A|1997-12-23|Method and apparatus for dynamically loading a driver routine in a computer memory CA2046356C|1998-12-22|Method and apparatus for improved initialization of computer system features US5694600A|1997-12-02|Methods and apparatus for booting a computer having a removable media disk drive KR100345632B1|2002-07-24|A memory device and a method for controlling the same US5548759A|1996-08-20|System for storing executable code within a resource data section of an executable file US4920481A|1990-04-24|Emulation with display update trapping DE4244266C2|1997-02-27|Method and circuit device for dynamically configuring device drivers for computer system equipment US6480919B2|2002-11-12|Method and apparatus for providing seamless hooking and intercepting of selected kernel and hal exported entry points US5594903A|1997-01-14|Operating System architecture with reserved memory space resident program code identified in file system name space KR100505972B1|2005-08-04|Architecture for a universal serial bus-based pc flash disk US6085318A|2000-07-04|Computer system capable of booting from CD-ROM and tape US5088033A|1992-02-11|Data processing system emulation in a window with a coprocessor and I/O emulation JP3273202B2|2002-04-08|Method of transferring data through a plurality of data channels and circuit architecture thereof US6785892B1|2004-08-31|Communications between partitioned host processors and management processor US6496791B1|2002-12-17|Interfaces for an open systems server providing tape drive emulation US5430845A|1995-07-04|Peripheral device interface for dynamically selecting boot disk device driver US7082509B2|2006-07-25|Method and system for allocating memory during system boot to reduce operating system memory resource consumption at run-time US5335329A|1994-08-02|Apparatus for providing DMA functionality to devices located in a bus expansion chassis US5530897A|1996-06-25|System for dynamic association of a variable number of device addresses with input/output devices to allow increased concurrent requests for access to the input/output devices US6021484A|2000-02-01|Dual instruction set architecture US5101490A|1992-03-31|Peripheral device controller with an EEPROM with microinstructions for a RAM control store US7330947B2|2008-02-12|Method and apparatus for backing up data in virtual storage medium US7010726B2|2006-03-07|Method and apparatus for saving data used in error analysis CN100378690C|2008-04-02|Memory transactions on low pin count bus US6401198B1|2002-06-04|Storing system-level mass storage configuration data in non-volatile memory on each mass storage device to allow for reboot/power-on reconfiguration of all installed mass storage devices to the same configuration as last use
同族专利:
公开号 | 公开日 KR100439031B1|2004-07-03|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2002-04-26|Application filed by 서울통신기술 주식회사 2002-04-26|Priority to KR10-2002-0023150A 2003-11-01|Publication of KR20030084438A 2004-07-03|Application granted 2004-07-03|Publication of KR100439031B1
优先权:
[返回顶部]
申请号 | 申请日 | 专利标题 KR10-2002-0023150A|KR100439031B1|2002-04-26|2002-04-26|method for driving control of board using a union driver for PCI board and recorded media for PCI board union driver| 相关专利
Sulfonates, polymers, resist compositions and patterning process
Washing machine
Washing machine
Device for fixture finishing and tension adjusting of membrane
Structure for Equipping Band in a Plane Cathode Ray Tube
Process for preparation of 7 alpha-carboxyl 9, 11-epoxy steroids and intermediates useful therein an
国家/地区
|