CN107644000B - Page expansion method based on AT96 bus - Google Patents

Page expansion method based on AT96 bus Download PDF

Info

Publication number
CN107644000B
CN107644000B CN201710849613.6A CN201710849613A CN107644000B CN 107644000 B CN107644000 B CN 107644000B CN 201710849613 A CN201710849613 A CN 201710849613A CN 107644000 B CN107644000 B CN 107644000B
Authority
CN
China
Prior art keywords
memory
conflict
page
board card
expansion board
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710849613.6A
Other languages
Chinese (zh)
Other versions
CN107644000A (en
Inventor
韩文兴
伍巧凤
李谢晋
王明星
叶常青
吴志强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nuclear Power Institute of China
Original Assignee
Nuclear Power Institute of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nuclear Power Institute of China filed Critical Nuclear Power Institute of China
Priority to CN201710849613.6A priority Critical patent/CN107644000B/en
Publication of CN107644000A publication Critical patent/CN107644000A/en
Application granted granted Critical
Publication of CN107644000B publication Critical patent/CN107644000B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Bus Control (AREA)

Abstract

The invention discloses a page expansion method based on an AT96 bus, which is characterized in that a memory space is expanded into 64 pages used for expanding a board card, each page is 64KB, each 4KB is one piece, each piece is used as a mark, and the last 4KB space is used as a reserved space for preventing a semaphore address space and a system reserved space from read-write collision. According to the technical scheme, a page expansion method is adopted, and one memory space is expanded into a plurality of pages, so that information interaction between a CPU and a plurality of different types of expansion board cards is realized. Aiming at error codes of the expansion board card and page switching errors of the memory, a conflict arbitration circuit is adopted to solve memory conflicts; and aiming at hardware faults, the system adopts self-checking to detect the faults.

Description

Page expansion method based on AT96 bus
Technical Field
The invention relates to the field of communication in a nuclear power digital instrument control platform, in particular to a page expansion method based on an AT96 bus.
Background
A CPU board card in the digital instrument control platform performs data interaction with each function board card through a backboard bus so as to realize different function requirements. The AT96 bus is an industrial personal computer bus standard initiated and established by German Siemens company, is used as a compatible protocol of an ISA bus, adopts a Wintel architecture of a PC, and has the characteristics of strong impact resistance, reasonable mechanical structure, suitability for industrial field use, easiness in maintenance and the like. The AT96 bus memory usage mechanism is completely consistent with PC computers. The memory of the PC board card can only be in the 640K-1M memory interval, and most of the memory in the PC board card is already occupied by devices such as a display card and the like, so that the usable space is small, and basically, only one page of dozens of KB can be provided for the expansion board card to use, but if the number of the expansion board cards is large, the system design requirement can obviously not be met, and therefore, the memory needs to be expanded through a mechanism. The technology adopts a page expansion technology to expand a memory space into a plurality of pages so as to realize information interaction between a CPU and a plurality of expansion board cards.
Based on this, a page extension method based on the AT96 bus is developed.
Disclosure of Invention
The invention provides a page expansion method based on an AT96 bus, which solves the technical problems that the memory interval of a PC board card is small, most memories are occupied by devices such as a display card and the like, only one page of dozens of KB can be provided for an expansion board card basically, and the system design requirement cannot be met under the condition that the number of the expansion board cards is large.
The invention is realized by the following technical scheme:
a page expansion method based on an AT96 bus expands a memory space into 64 pages used for expanding a board card, each page is 64KB, each 4KB is one piece, each piece is used as a mark, and the last piece of 4KB space is used as a reserved space and is used for preventing a semaphore address space and a system reserved space from read-write collision. .
Preferably, each expansion board card occupies 1-15 memory segments of each page, so as to meet the requirements of different expansion board cards on the memory size.
Preferably, each expansion board card shares one conflict arbitration signal line, the conflict arbitration signal line is used for conflict arbitration processing, and the conflict arbitration signal line respectively represents idle state, normal occupation state and conflict state.
Preferably, the memory expansion of each expansion board card is realized by a CPLD and a dual-port RAM, and the CPLD is used for performing address decoding and command analysis, outputting a control signal, and detecting a conflict.
Preferably, the expansion board card is divided into two large areas, and the 60KB at the low end is a user memory space for exclusive use of the expansion board card; the upper end 4KB is a sharing interval which is used for sharing by all the expansion board cards.
Preferably, each expansion board card shares a hardware arbitration line, and is connected with a pull-down resistor of 55K Ω to form a basic communication line for hardware arbitration.
Preferably, each expansion board card is driven by a resistor connected in series with the I/O pin and used for issuing memory occupation announcement; an occupation conflict detection circuit is adopted to detect the page switching condition of the memory, and the occupation conflict detection circuit consists of two comparators and outputs a 2-bit signal.
Compared with the prior art, the invention has the following advantages and beneficial effects:
the technical scheme of the invention is based on the page expansion technology of the AT96 bus, expands the memory space of the CPU of the digital instrument control platform into a plurality of pages, realizes the information interaction between the memory space and a plurality of expansion board cards, and prevents the memory conflict by adopting a conflict arbitration mechanism and self-checking.
Drawings
FIG. 1 is a schematic block diagram of a page extension structure of the system of the present invention;
FIG. 2 is a schematic block diagram of the AT96 bus memory expansion structure according to the present invention;
FIG. 3 is a diagram illustrating the memory address allocation of the expansion board card according to the present invention;
FIG. 4 is a diagram illustrating a collision arbitration structure according to the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is further described in detail below with reference to examples, and the exemplary embodiments and descriptions thereof are only used for explaining the present invention and are not used as limitations of the present invention.
Example (b):
a page expansion method based on an AT96 bus expands a memory space into 64 pages used for expanding a board card, each page is 64KB, each 4KB is one piece, each piece is used as a mark, and the last piece of 4KB space is used as a reserved space and is used for preventing a semaphore address space and a system reserved space from read-write collision.
The invention takes a system CPU board card as CDM5530 and a plurality of different expansion board cards as an example to explain a page expansion method based on an AT96 bus. The system CPU board CDM5530 provides only one 64KB page for the expansion board, and multiple different expansion boards have different memory size requirements. Aiming at the above situation, a page expansion technology is adopted to expand one memory space into 64 pages, each page is 64KB, every 4KB is one piece, the labels are from 0 to E, and the 4K space labeled as F is used as a reserved space for preventing the read-write conflict semaphore address space and the system reserved space.
The method specifically comprises the following steps:
page 0: in the use interval of the I/O type board cards, each board card occupies a 4KB memory segment, 15 board cards are supported at the same time to the maximum extent, and the memory segments of the board cards are selected through a 4-bit dial switch.
Pages 1-8: in order to isolate the use interval of the CAN communication board cards, each CAN communication board card occupies 2 memory segments, and the memory segments are selected through a 4-bit dial switch, wherein 1bit is selected as a page, and 3 bits are selected as memory segment addresses.
Pages 9-16: in order to isolate the use interval of the RS485 communication board card, each CAN communication board card occupies 2 memory segments, the memory segments are selected through a 4-bit dial switch, wherein 1bit is selected as a page, and 3 bits are selected as the address of the memory segments.
Pages 17-24: in order to isolate the use interval of the Ethernet communication board card, each CAN communication board card occupies 2 memory segments, the memory segments are selected through a 4-bit dial switch, wherein 1bit is selected as a page, and 3 bits are selected as memory segment addresses.
Pages 25-63: the system is reserved and expandable.
According to the requirement, each board card can occupy 1-15 memory sections of each page, so that the requirement of different expansion board cards on the memory size is met. The memory page extension structure is shown in fig. 1.
Since the AT96 bus is a single-master multi-slave bus, there is no conflict problem when the CPU executes a write command, and a conflict occurs only when the CPU executes a read operation, and multiple slaves respond AT the same time, so in the embodiment, each expansion board shares one conflict arbitration signal line, which is used for conflict arbitration processing, and the conflict arbitration signal lines respectively represent three states of idle, normal occupied, and conflict.
The memory expansion of each expansion board card is realized by a CPLD and a dual-port RAM, and the CPLD is used for carrying out address decoding and command analysis, outputting a control signal and detecting conflict. As shown in fig. 2, a schematic block diagram of an AT96 bus memory expansion structure.
The expansion board card is divided into two large areas, and the 60KB at the lower end is a user memory space for exclusive use of the expansion board card; the upper end 4KB is a sharing interval which is used for sharing by all the expansion board cards.
In the sharing interval, the 256Bytes interval at the lower end is a flag grabbing interval, and the address of the 256Bytes interval is 0XDF 000-0 XF0 FF; secondly, selecting an interval for a page, occupying a 256Bytes interval, and having an address of 0XDF 100-0 XDF1 FF; the 256Bytes intervals in sequence are segment address selection intervals, the addresses of the segment address selection intervals are 0XDF 200-0 XDF2FF, and the rest intervals are reserved intervals and are not used for the time being. As shown in fig. 3, the memory address allocation map of the expansion board card is shown.
In consideration of the reliability and speed requirements of conflict arbitration in the application process and the influence on the access speed of the memory, the implementation mode of the hardware arbitration line is adopted. In the circuit, a hardware arbitration line shared by all slots is connected with a pull-down resistor of 5K omega to form a basic communication line for hardware arbitration. For each expansion board card, a memory occupation announcement issuing function is formed by driving through an I/O pin series resistor, and in order to realize the design that all the expansion board cards share one line, the I/O driver of each board card is connected with a Schottky diode in series so as to prevent the influence of current reverse discharge. The voltage of the hardware line reflects the occupation and conflict conditions of the hardware memory page, and an occupation conflict detection circuit is separately designed to detect the memory page switching condition, as shown in fig. 4. The detection circuit consists of two comparators and outputs a 2-bit signal:
bit 0: idle/busy signal, 1: indicating idle, 0: indicating occupancy
bit 1: collision/normal signal, 1: represents a conflict, 0: indicating normal use.
The working process of the conflict detection circuit is as follows:
after the machine is started, the memory page is in an idle state, all board cards do not occupy the memory page, the driving pin outputs low level, the actual voltage of the conflict arbitration signal line is 0V due to the reverse cut-off function of the diode, and at the moment, the occupied conflict detection circuit outputs 01 data due to the fact that the input voltage is 0V, and the idle state is represented.
When the CPU card sends a memory page switching address through a shared command interval, the expansion board CPLD detects that the command validity is consistent with the address matching, the memory page switching is executed, meanwhile, the driving pin outputs a high level, the level is 3.3V, the actual driving voltage is 3V due to the forward voltage drop of the diode, the actual voltage of the conflict arbitration signal line is 1.0V after the matching of the series resistor and the 5K pull-down resistor of the conflict arbitration line, at the moment, the occupation/conflict detection circuit outputs data 00 due to the fact that the input voltage is 1.0V, and normal occupation is represented.
When 2 or more than 2 expansion board cards start memory page switching due to hardware faults, error configuration or other problems, 2 or more than 2 high levels are output, the voltage of a conflict arbitration signal line rises due to the confluence effect of driving currents, the voltage is 1.5V during two driving, and the voltage is higher when the voltage exceeds 2. At this time, since the input voltage of the occupancy collision detection circuit is 1.5V or more, the output data is 10, indicating a collision.
After the memory switch is executed, if the arbitration signal is detected to be wrong, each expansion board still does not respond to the switched memory read command so as to prevent the bus access conflict of the AT 96.
For the memory conflict processing, due to human errors or coding switch faults of the expansion board cards, the memory addresses of 2 or more than 2 expansion board cards are the same, and at the moment, when the CPU card sends a memory page switching command, a plurality of board cards occupy the bus at the same time.
For the CPU, the conflict of the memory page can be judged through the state of the conflict/arbitration signal line, the CPU will not send a memory reading command, and the subsequent memory reading conflict operation can be prevented.
Even if the CPU card does not process the conflict signal and sends a memory read operation, hardware conflicts will not actually result because each card itself will check the conflict/arbitration signal line, when a conflict occurs, both the DIR and OE pins of the driver IC of its data port will be controlled by the arbitration result signal, when the bus has already made a conflict, the read operation will actually be invalid and the CPU card will read 0xFF data.
The memory page switching error is that when one expansion card occupies the memory space and is switched to another expansion card, an error occurs, so that the original expansion card does not release the memory interval, and thus, the memory conflict is caused. This is often the case because the AT96 bus is disturbed, or because the expansion card has failed, and a memory switch command is received but not executed.
At this time, the expansion card will automatically enter into a protection state to prevent the occurrence of conflict, and the CPU card can also judge the occurrence of conflict through the conflict/arbitration signal line.
The CPU card can also prevent the situation from occurring through two-step switching operation, namely the CPU card firstly sends a memory release command, detects a conflict/arbitration signal line, and sends a second switching command to an actual page after all the board cards release the memory space.
When hardware failure appears, if the I/O pin itself breaks down, outside diode, resistance failure to and occupy conflict detection circuit's trouble, all can lead to the emergence of hardware conflict, and, because the trouble takes place this moment, disturbed the operating condition of conflict arbitration line, can lead to actual hardware conflict to take place, can carry out circuit self-checking, when system is electrified or the appointed self-checking of system, send the order by the CPU card, detect each expansion integrated circuit board, the content that detects includes:
(1) and sequentially appointing the address of each board card, detecting whether the board card can reliably realize memory switching, outputting a correct occupation signal, and completing the detection by matching the CPU and the MCU.
(2) And outputting a special address, forcing 2 board cards to execute memory switching, realizing the simulation of a memory conflict phenomenon, and detecting whether the occupation/conflict detection circuit of each board card works normally.
The above-mentioned embodiments are intended to illustrate the objects, technical solutions and advantages of the present invention in further detail, and it should be understood that the above-mentioned embodiments are merely exemplary embodiments of the present invention, and are not intended to limit the scope of the present invention, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present invention should be included in the scope of the present invention.

Claims (2)

1. A page expansion method based on an AT96 bus is characterized in that: expanding a memory space into 64 pages used for expanding the board card, wherein each page is 64KB, each 4KB is one piece, each piece is used as a mark, and the last 4KB space is used as a reserved space and is used for preventing a read-write conflict semaphore address space and a system reserved space;
each expansion board card shares a conflict arbitration signal line which is used for conflict arbitration processing and respectively represents three states of idle, normal occupation and conflict;
the memory expansion of each expansion board card is realized by a CPLD and a double-port RAM, and the CPLD is used for carrying out address decoding and command analysis, outputting a control signal and detecting conflict;
the expansion board card is divided into two large areas, and the 60KB at the lower end is a user memory space for exclusive use of the expansion board card; the 4KB at the upper end is a sharing interval which is used for being shared by all the expansion board cards;
each expansion board card shares a hardware arbitration line and is connected with a pull-down resistor of 55K omega to form a basic communication line for hardware arbitration;
each expansion board card is driven by a resistor connected with an I/O pin in series and used for issuing memory occupation announcement; an occupation conflict detection circuit is adopted to detect the page switching condition of the memory, and the occupation conflict detection circuit consists of two comparators and outputs a 2-bit signal.
2. The page expanding method based on the AT96 bus of claim 1, wherein: each expansion board card occupies 1-15 memory sections of each page, and is used for meeting the requirements of different expansion board cards on the memory size.
CN201710849613.6A 2017-09-20 2017-09-20 Page expansion method based on AT96 bus Active CN107644000B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710849613.6A CN107644000B (en) 2017-09-20 2017-09-20 Page expansion method based on AT96 bus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710849613.6A CN107644000B (en) 2017-09-20 2017-09-20 Page expansion method based on AT96 bus

Publications (2)

Publication Number Publication Date
CN107644000A CN107644000A (en) 2018-01-30
CN107644000B true CN107644000B (en) 2020-11-03

Family

ID=61112174

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710849613.6A Active CN107644000B (en) 2017-09-20 2017-09-20 Page expansion method based on AT96 bus

Country Status (1)

Country Link
CN (1) CN107644000B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109582623B (en) * 2018-11-21 2022-02-18 科大智能电气技术有限公司 Expansion board circuit capable of realizing cascade connection of multiple expansion boards of different types

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103137092A (en) * 2013-02-04 2013-06-05 格科微电子(上海)有限公司 Arbitration method, arbitration circuit, liquid crystal display (LCD) driving circuit and LCD driving system
CN105677608A (en) * 2015-12-31 2016-06-15 浙江众合科技股份有限公司 Multi-master RS485 bus arbitration method and system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6279092B1 (en) * 1999-01-06 2001-08-21 International Business Machines Corporation Kernel identification for space management in compressed memory systems
US8667249B2 (en) * 2004-12-22 2014-03-04 Intel Corporation Systems and methods exchanging data between processors through concurrent shared memory
US20120185667A1 (en) * 2009-09-25 2012-07-19 Gandhi Kamlesh Virtual-memory system with variable-sized pages
CN104216835B (en) * 2014-08-25 2017-04-05 杨立群 A kind of method and device for realizing internal memory fusion
US9977598B2 (en) * 2014-10-27 2018-05-22 Mediatek Inc. Electronic device and a method for managing memory space thereof
CN104516851B (en) * 2014-12-31 2017-11-21 福州瑞芯微电子股份有限公司 A kind of system and method for RS485 slave units address distribution
CN106528453B (en) * 2015-09-10 2019-10-18 中国航空工业第六一八研究所 Page table partition management device and method based on compound scale page

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103137092A (en) * 2013-02-04 2013-06-05 格科微电子(上海)有限公司 Arbitration method, arbitration circuit, liquid crystal display (LCD) driving circuit and LCD driving system
CN105677608A (en) * 2015-12-31 2016-06-15 浙江众合科技股份有限公司 Multi-master RS485 bus arbitration method and system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Low Cost Arbitration Method for Arbitrarily Scalable Multiprocessor Systems";T. Vallius;《4th IEEE International Symposium on Electronic Design, Test and Applications》;20081231;第119-124页 *

Also Published As

Publication number Publication date
CN107644000A (en) 2018-01-30

Similar Documents

Publication Publication Date Title
TWI553650B (en) Method, apparatus and system for handling data error events with a memory controller
CN113688087B (en) PCIE (peripheral component interface express) device enumeration method, system, storage medium and device
CN111752871A (en) PCIE equipment, device and method for realizing compatibility of same PCIE slot position with different PCIE bandwidths
CN211427190U (en) Server circuit and mainboard based on Feiteng treater 2000+
EP2688258B1 (en) Single board communication method, system and single board
CN102650975A (en) Realization method of I2C bus for multi-hardware platform FT server
CN107368401B (en) Management system and management method
CN101599055B (en) Embedded isomerism CPU array system based on correlative bus
CN112416824A (en) Efuse read-write controller, chip, electronic equipment and control method
US20180267870A1 (en) Management node failover for high reliability systems
CN111949457A (en) Server fault chip detection method and device
CN107644000B (en) Page expansion method based on AT96 bus
CN101208682A (en) Slave device with latched request for service
CN103412838B (en) A kind of expanding system, communication means, address configuration method, equipment and device
CN102760109A (en) Data communication method, device and system
CN115033441A (en) PCIe equipment fault detection method, device, equipment and storage medium
EP3321814B1 (en) Method and apparatus for handling outstanding interconnect transactions
CN104484260A (en) Simulation monitoring circuit based on GJB289 bus interface SoC (system on a chip)
CN103257905A (en) Embedded computer system stored data checking circuit and method
CN105528314A (en) Data processing method and control equipment
CN101853232B (en) Extensible adapter
US20090119420A1 (en) Apparatus and method for scaleable expanders in systems management
CN101702141B (en) Method and device supporting dynamic working mode of high-density card
CN104134464A (en) System and method for testing address line
CN114817104B (en) IIC pull-up voltage switching circuit and switching method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant