US20190179787A1 - Device and method for controlling priority-based vehicle multi-master module - Google Patents
Device and method for controlling priority-based vehicle multi-master module Download PDFInfo
- Publication number
- US20190179787A1 US20190179787A1 US16/204,971 US201816204971A US2019179787A1 US 20190179787 A1 US20190179787 A1 US 20190179787A1 US 201816204971 A US201816204971 A US 201816204971A US 2019179787 A1 US2019179787 A1 US 2019179787A1
- Authority
- US
- United States
- Prior art keywords
- priority
- block
- functional blocks
- functional
- common block
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 19
- 230000006870 function Effects 0.000 claims abstract description 49
- 230000002265 prevention Effects 0.000 claims abstract description 19
- 230000000875 corresponding effect Effects 0.000 description 20
- 230000001276 controlling effect Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007775 late Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/4031—Coupling between buses using bus bridges with arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40013—Details regarding a bus controller
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K6/00—Arrangement or mounting of plural diverse prime-movers for mutual or common propulsion, e.g. hybrid propulsion systems comprising electric motors and internal combustion engines ; Control systems therefor, i.e. systems controlling two or more prime movers, or controlling one of these prime movers and any of the transmission, drive or drive units
- B60K6/20—Arrangement or mounting of plural diverse prime-movers for mutual or common propulsion, e.g. hybrid propulsion systems comprising electric motors and internal combustion engines ; Control systems therefor, i.e. systems controlling two or more prime movers, or controlling one of these prime movers and any of the transmission, drive or drive units the prime-movers consisting of electric motors and internal combustion engines, e.g. HEVs
- B60K6/22—Arrangement or mounting of plural diverse prime-movers for mutual or common propulsion, e.g. hybrid propulsion systems comprising electric motors and internal combustion engines ; Control systems therefor, i.e. systems controlling two or more prime movers, or controlling one of these prime movers and any of the transmission, drive or drive units the prime-movers consisting of electric motors and internal combustion engines, e.g. HEVs characterised by apparatus, components or means specially adapted for HEVs
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
- B60R16/023—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
- B60R16/0231—Circuits relating to the driving or the functioning of the vehicle
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60Y—INDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
- B60Y2200/00—Type of vehicle
- B60Y2200/90—Vehicles comprising electric prime movers
- B60Y2200/91—Electric vehicles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60Y—INDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
- B60Y2200/00—Type of vehicle
- B60Y2200/90—Vehicles comprising electric prime movers
- B60Y2200/92—Hybrid vehicles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/36—Arbitration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40273—Bus for use in transportation systems the transportation system being a vehicle
Definitions
- the present invention relates to a control device and method for a multi-master module, and more particularly, to a control device and method for a multi-master module capable of controlling the use of a common block on a priority basis in a slave device connected to a plurality of master devices.
- microcontroller unit in a vehicle plays an important role in controlling the functions of each device of the vehicle.
- HCU Hybrid Control Unit
- ECU Engine Control Unit
- the present invention has been made to solve the above-mentioned technical problems, and it is an object of the present invention to substantially complement various problems caused by limitations and disadvantages in the prior art, and the present invention relates to a control device and method for a multi-master device capable of controlling the use of a common block in a slave device connected to a plurality of master devices in a priority-based manner.
- the present invention may determine the access subject of the corresponding masters based on priority.
- a plurality of masters constitute a unique register area.
- each of a plurality of masters sets a master selection register area in a dedicated register area without directly accessing a register area of the corresponding common block.
- the priority of the function to be executed by the master is set in the master selection register area, and the corresponding priority area is compared. If the priority of the function to be executed is higher than the priority of the currently executed function, the priority determination unit may stop the currently executed function and execute the higher priority function. Also, the priority determination unit informs the entire module that a priority determination operation is performed. At this time, among the blocks receiving the corresponding information, the block in which the function operation is stopped may perform the function again.
- An embodiment of the inventive concept provides a multi-master collision prevention system including: a plurality of functional blocks including a plurality of external modules and a plurality of internal modules performing different functions; a plurality of interfaces respectively connected to the plurality of external modules, respectively; a plurality of dedicated registers including priority information of the plurality of functional blocks and connected to the plurality of functional blocks, respectively; a common block selectively connected to the plurality of functional blocks, and configured to function as a master for controlling the common blocks when the plurality of functional blocks are connected to the common block; and a priority determination unit configured to determine a connection between any one of the plurality of functional blocks and the common block, wherein when at least two functional blocks among the plurality of functional blocks access the common block at the same time, the priority determination unit determines whether one of the at least two functional blocks and the common block are connected based on priority information of the at least two functional blocks, and broadcasts or multicasts the priority information of the determined functional block to at least some of the plurality of dedicated registers.
- each of the plurality of dedicated registers may include a priority selection register area, and the priority selection register area may store priority information of a functional block corresponding to a corresponding dedicated register.
- the priority selection register area may include: a broadcasting flag indicating that the priority determination unit is connected to one of the at least two functional blocks that attempt to access simultaneously; a broadcasting value indicating a priority value of one functional block connected to the common block; and a priority value of a functional block corresponding to the priority selection register area.
- the priority determination unit may compare priority information of a functional block that attempts to access the common block with priority information of a functional block that is already connected, wherein when the priority of the functional block that attempts to access the common block is higher than the priority of the functional block that is already connected, the priority determination unit may stop connection of the already-connected functional block and the common block, attempt to access the common block, and connect a functional block having a higher priority.
- the priority determination unit may broadcast or multicast a priority value of a disconnected module as the broadcasting value.
- a multi-master collision prevention method in a multi-master collision prevention system including: a plurality of functional blocks including a plurality of external modules and a plurality of internal modules performing different functions; a plurality of interfaces respectively connected to the plurality of external modules, respectively; a plurality of dedicated registers including priority information of the plurality of functional blocks and connected to the plurality of functional blocks, respectively; a common block selectively connected to the plurality of functional blocks, and configured to function as a master for controlling the common blocks when the plurality of functional blocks are connected to the common block; and a priority determination unit configured to determine a connection between any one of the plurality of functional blocks and the common block, the method including: accessing, by at least two functional blocks among the plurality of functional blocks, the common block at the same time; comparing priority information of the at least two functional blocks; determining a connection between any one of the at least two functional blocks and the common block based on the comparison result; and broadcasting or multicasting the priority information of the any one connected functional
- the method may further include changing priority information of a functional block that attempts to access the common block among the plurality of functional blocks.
- each of the plurality of dedicated registers may include a priority selection register area, and the priority selection register area stores priority information of a functional block corresponding to a corresponding dedicated register.
- the priority selection register area may include: a broadcasting flag indicating that the priority determination unit is connected to one of the at least two functional blocks that attempt to access simultaneously; a broadcasting value indicating a priority value of one functional block connected to the common block; and a priority value of a functional block corresponding to the priority selection register area.
- the method may further include, when any one functional block among the plurality of functional blocks is already connected to the common block, comparing priority information of a functional block that attempts to access the common block with priority information of a functional block that is already connected; and when the priority of the functional block that attempts to access the common block is higher than the priority of the functional block that is already connected, stopping connection of the already-connected functional block and the common block, attempting to access the common block, and connecting a functional block having a higher priority.
- the method may further include broadcasting or multicasting a priority value of a disconnected module as the broadcasting value.
- FIGS. 1 and 2 show a block diagram of an integrated device connected to a multi-master according to an embodiment of the present invention
- FIG. 3 is a view illustrating a data structure of a priority selection register according to an embodiment of the present invention
- FIG. 4 is a flowchart illustrating operations of a multi-master and an integrated device according to an embodiment of the present invention.
- FIGS. 5A, 5B and 5C are views illustrating a change in a priority selection register value according to an operation of a multi-master and an integrated device according to an embodiment of the present invention.
- FIG. 1 is a block diagram of a multi-master collision prevention system including an integrated device connected to a multi-master according to an embodiment of the present invention.
- the multi-master collision prevention system of the present invention may include a plurality of functional blocks including a plurality of external modules (the first external module 200 and the second external module 300 ) and a plurality of internal modules.
- the plurality of external modules 200 and 300 are modules existing outside the integrated device 100 .
- the external modules 200 and 300 are external systems (or chips) that may operate as masters and are connected to the interface of the integrated device 100 .
- the external modules 200 and 300 may be a Hybrid Control Unit (HCU), a Microcontroller unit of an Engine Control Unit (ECU), a Vehicle Controller (VCU) of an Electric Vehicle, a Motor Controller (MCU), a Low Voltage DC-DC Converter (LDC), and the like.
- HCU Hybrid Control Unit
- ECU Engine Control Unit
- VCU Vehicle Controller
- MCU Motor Controller
- LDC Low Voltage DC-DC Converter
- the integrated device 100 includes a plurality of interfaces 120 , a plurality of internal modules 130 , a plurality of dedicated registers 140 connected to the plurality of internal modules and external modules, a priority determination unit 150 , and a common block 110 .
- the integrated device 100 may be, for example, an integrated power system for a vehicle that supplies power to the motor and the engine of the hybrid vehicle.
- the plurality of interfaces 120 are configured to connect the external modules 200 and 300 and the corresponding dedicated registers 140 and common block 110 in the integrated device 100 .
- the plurality of interfaces 120 may be, for example, a Serial Peripheral Interface (SPI) communication module.
- SPI Serial Peripheral Interface
- the plurality of interfaces 120 are not limited to the SPI communication module, and for example, may be various types of interfaces such as a Controller Area Network (CAN) or a Local Interconnect Network (LIN).
- CAN Controller Area Network
- LIN Local Interconnect Network
- the first external module 200 may operate as a master with respect to the first communication unit 122 . That is, the first external module 200 operates as a master by providing a chip select signal and a clock to the first communication unit 122 , and the first communication unit 122 may operate as a slave.
- the internal module 130 may be an independent functional block in the integrated device 100 , and for example, may be a control block or an internal memory block. For example, it may be implemented as a semiconductor intellectual property (IP).
- IP semiconductor intellectual property
- the internal module 130 may be an IP for controlling the power system.
- the internal module 130 may be a power system chip internal memory.
- the plurality of dedicated registers 140 are registers for storing information necessary for operation of a plurality of functional blocks (e.g., the internal module 130 or the external modules 200 and 300 ), and are connected to the corresponding internal module 130 or interface 120 on a one-to-one basis.
- the plurality of dedicated registers 140 include a priority selection register area 160 including priority information of the corresponding internal module 130 or external modules 200 and 300 connected on a one-to-one basis. And, it is connected to the priority determination unit 150 .
- the priority determination unit 150 may be connected to the plurality of dedicated registers 140 to read priority information based on a base address and the functional block having the highest priority among the plurality of functional blocks may be connected to access the register of the common block 110 . Also, when a functional block accessing the register of the common block 110 is changed by a priority operation, that is, by an operation of suspending or stopping access according to the priority, the change may be broadcast or multicast through the plurality of dedicated registers 140 .
- the register of the common block 110 is a register for storing information necessary for operation of the common block of the integrated device 100 . It is possible to write or read necessary information from the external or internal module determined by the above-described priority determination unit 150 .
- the first external module 210 is, for example, a micro-controller of a Hybrid Control Unit (HCU), and the second external module 310 may be, for example, a microcontroller of an Engine Control Unit (ECU).
- HCU Hybrid Control Unit
- ECU Engine Control Unit
- the first and second interfaces 122 and 124 may be implemented as an SPI communication module.
- the plurality of dedicated registers 126 , 136 , 138 , and 128 are registers that are used independently by a plurality of external modules 210 and 310 and a plurality of internal modules 130 , respectively.
- the dedicated register 126 connected to the first external module 210 may be a register for performing an operation related to the HCU independently.
- the dedicated register 128 connected to the second external module 124 may be a register for performing an operation related to the ECU independently.
- the common block 110 may be a common block such as a real time clock (RTC), a low side driver (LSD), and a high side driver (HSD) in the integrated device 100 .
- RTC real time clock
- LSD low side driver
- HSD high side driver
- the priority determination unit 150 may include a priority comparison unit 155 , a broadcasting unit 155 , and a selection unit 158 .
- the priority determination unit 150 is connected to the priority selection register area 160 , which is included in each of the plurality of dedicated registers 126 , 136 , 138 , and 128 .
- the priority comparison unit 155 may receive priority information from the priority selection register area 160 included in the plurality of dedicated registers 126 , 136 , 138 and 128 , and may control the selection unit 158 based on the priority information.
- the priority information may be a priority level 440 , and the priority may be given higher in descending order of the priority level.
- the priority comparison unit 153 may control the selector 158 so that the first external module 210 connected to the first dedicated register 126 having a low priority level may access the priority register.
- the broadcasting unit 155 may broadcast or multicast a priority level and a priority operation status of the corresponding pending or suspended module.
- the selection unit 158 may selectively connect the common block 110 with a module having a high priority (or a low priority level).
- the selection unit 158 may be implemented with, for example, a multiplexer (MUX).
- MUX multiplexer
- the multi-master collision prevention system according to the present invention may perform the use of the common block without collision based on the priority information. Or, even if another external or internal module already uses the common block, in a case where an external or internal module requires the use of highly urgent features, the multi-master collision prevention system according to the present invention may control the functions of other modules with low urgency to be performed again after the urgent functions are executed first.
- this multi-master collision prevention system is as follows.
- the priority determination unit 150 may connect an external or internal module that attempts to access the common block 110 , so that the function of the corresponding external or internal module may be performed.
- the priority determination unit 150 obtains a priority level from the priority selection register area 160 of the corresponding module and compares the priority levels of the modules.
- the priority determination unit 150 may control the function of the higher priority module to be performed first based on the comparison result. Alternatively, if the priority levels are the same, the priority determination unit 150 may control the function of the module that first attempts to access to be performed first.
- the priority determination unit 150 may stop the connection between the module of the lower priority function and the register of the common block 110 and may control the high-priority function module to be connected to the register of the common block 110 so that the corresponding function is performed first.
- the broadcasting unit 158 of the priority determination unit 150 broadcasts whether or not a priority operation is performed on another external or internal module and the priority levels of the interrupted function.
- the broadcasting unit 158 of the priority determination unit 150 may multicast whether the priority determination operation is performed and the priority level of the interrupted function to the modules that attempt to access it at the same time.
- the module with the lower priority function that attempts to access the register of the common block 110 continuously so that after the execution of the function with the higher priority is completed, lower priority functions may be performed.
- FIG. 2 shows only two internal modules for the sake of simplicity, the present invention is not limited thereto, and there may be two or more internal modules.
- the priority selection register 160 includes an address portion 410 , a broadcast flag 420 , a broadcast value 430 , a priority level 440 , and an area of a global configuration 450 .
- the address portion 410 indicates an address on the register of the corresponding data.
- the broadcast flag 420 relates to whether or not to perform a priority operation. That is, it is an area indicating whether an operation of holding or stopping the access of the colliding external or internal module is performed according to the priority.
- the broadcast value 430 indicates the priority level of the operation that is suspended or stopped as the priority operation is performed.
- the priority level 440 is a value based for determining the master to control the common block. For example, if the priority level is small, it may mean high priority.
- the priority determination unit 150 may control the function, which is to be performed by the first external module 210 connected to the first dedicated register 126 , to have a higher priority than the function, which is to be performed by the first internal module 132 connected to the second dedicated register 136 .
- the global configuration 450 is a register value required for the internal or external modules 210 and 310 to perform the function of the common block 110 , and performs a common block function based on the data in the area of the global configuration 450 .
- the priority level of the first interface 122 is set to ‘3’
- the priority level of the first internal module 132 is set to ‘1’
- the priority level of the second internal module 134 is set to ‘2’
- the priority level of the second interface 124 is set to ‘3’.
- the first external module 210 attempts to access the register of the common block 110 (step S 510 ).
- the function to be performed by the first external module 210 is a function requiring urgency such as a vehicle failure notification
- the priority level of the initial first interface 122 connected to the initial first external module 210 may be updated from ‘3’ to ‘0’ (step S 520 , see FIG. 5B ).
- the priority determination unit 150 compares the priority levels of the first internal module 132 and the first external module 210 . That is, the priority level ‘1’ of the first internal module 132 and the priority level ‘0’ of the first external module 210 may be compared (step S 530 , see FIG. 5B ).
- the priority determination unit 150 checks the master (external or internal module) attempting to access the register of the common block 110 based on the base address (0x21 in FIGS. 5A to 5B ) of the priority selection register area 160 of the external or internal module that attempts to access each clock.
- step S 540 when access to the register of the common block 110 of the first internal module 132 is suspended or interrupted by the priority determination unit 150 , that is, when the priority operation is performed, whether the priority operation is performed and the priority level of the module whose access is suspended or stopped may be broadcast or multicasted (step S 540 ).
- the broadcast flag 420 and the broadcast value 430 of the priority selection register area 160 of the dedicated register 140 are updated.
- the broadcast flag 420 is information on a priority operation status
- the broadcast value 430 corresponds to a priority level of a module whose access is suspended or stopped.
- the priority level of a module whose access is suspended or stopped through the broadcast value (‘1’) is equal to its own priority level (or the same or a higher priority level)
- the first internal module 132 whose access is suspended or interrupted by the priority operation continues to retry the interrupted operation.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Small-Scale Networks (AREA)
- Hardware Redundancy (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
- This U.S. non-provisional patent application claims priority under 35 U.S.C. § 119 of Korean Patent Application No. 10-2017-0168626, filed on Dec. 8, 2017, the entire contents of which are hereby incorporated by reference.
- The present invention relates to a control device and method for a multi-master module, and more particularly, to a control device and method for a multi-master module capable of controlling the use of a common block on a priority basis in a slave device connected to a plurality of master devices.
- Recently, automobiles use many electronic control systems with built-in microcontroller unit, and their use is gradually increasing. The microcontroller unit in a vehicle plays an important role in controlling the functions of each device of the vehicle.
- As the electronic control system in the vehicle, there are various systems such as a Hybrid Control Unit (HCU) and an Engine Control Unit (ECU) of a hybrid vehicle. In this case, if the common functions used by each electronic control system, for example, the power supply system and the function safety support functions, may be shared and used, this may be very helpful for cost reduction.
- However, even when the common functions are integrated, in order to guarantee the independence of each system, logic and registers should be classified into independent blocks and common blocks according to the function of each block.
- In this case, when several systems simultaneously access a commonly used block or when the operation must be processed so that multiple systems may use the common block at high speed, there is a high possibility that a problem such as a collision occurs.
- In particular, in this case, a method in which a plurality of masters access a common block in the order of access first is used. However, in the case of a corresponding method, even if the multi-master within the operating clock range is accessed simultaneously or the master selection area is set later, this may be a problem if the corresponding action is an urgent function.
- Therefore, it is required to implement an appropriate control method for preventing collision when accessing a common block so that a plurality of master modules may share a common block.
- The present invention has been made to solve the above-mentioned technical problems, and it is an object of the present invention to substantially complement various problems caused by limitations and disadvantages in the prior art, and the present invention relates to a control device and method for a multi-master device capable of controlling the use of a common block in a slave device connected to a plurality of master devices in a priority-based manner.
- More specifically, when a plurality of master modules (an external module or an internal module) simultaneously accesses a common block, the present invention may determine the access subject of the corresponding masters based on priority. In particular, to ensure independence when controlling the function of each master, a plurality of masters constitute a unique register area.
- In addition, in order to control a common block, each of a plurality of masters sets a master selection register area in a dedicated register area without directly accessing a register area of the corresponding common block.
- In this case, the priority of the function to be executed by the master is set in the master selection register area, and the corresponding priority area is compared. If the priority of the function to be executed is higher than the priority of the currently executed function, the priority determination unit may stop the currently executed function and execute the higher priority function. Also, the priority determination unit informs the entire module that a priority determination operation is performed. At this time, among the blocks receiving the corresponding information, the block in which the function operation is stopped may perform the function again.
- An embodiment of the inventive concept provides a multi-master collision prevention system including: a plurality of functional blocks including a plurality of external modules and a plurality of internal modules performing different functions; a plurality of interfaces respectively connected to the plurality of external modules, respectively; a plurality of dedicated registers including priority information of the plurality of functional blocks and connected to the plurality of functional blocks, respectively; a common block selectively connected to the plurality of functional blocks, and configured to function as a master for controlling the common blocks when the plurality of functional blocks are connected to the common block; and a priority determination unit configured to determine a connection between any one of the plurality of functional blocks and the common block, wherein when at least two functional blocks among the plurality of functional blocks access the common block at the same time, the priority determination unit determines whether one of the at least two functional blocks and the common block are connected based on priority information of the at least two functional blocks, and broadcasts or multicasts the priority information of the determined functional block to at least some of the plurality of dedicated registers.
- In an embodiment, each of the plurality of dedicated registers may include a priority selection register area, and the priority selection register area may store priority information of a functional block corresponding to a corresponding dedicated register.
- In an embodiment, the priority selection register area may include: a broadcasting flag indicating that the priority determination unit is connected to one of the at least two functional blocks that attempt to access simultaneously; a broadcasting value indicating a priority value of one functional block connected to the common block; and a priority value of a functional block corresponding to the priority selection register area.
- In an embodiment, when any one functional block among the plurality of functional blocks is already connected to the common block, the priority determination unit may compare priority information of a functional block that attempts to access the common block with priority information of a functional block that is already connected, wherein when the priority of the functional block that attempts to access the common block is higher than the priority of the functional block that is already connected, the priority determination unit may stop connection of the already-connected functional block and the common block, attempt to access the common block, and connect a functional block having a higher priority.
- In an embodiment, the priority determination unit may broadcast or multicast a priority value of a disconnected module as the broadcasting value.
- In an embodiment of the inventive concept, a multi-master collision prevention method in a multi-master collision prevention system including: a plurality of functional blocks including a plurality of external modules and a plurality of internal modules performing different functions; a plurality of interfaces respectively connected to the plurality of external modules, respectively; a plurality of dedicated registers including priority information of the plurality of functional blocks and connected to the plurality of functional blocks, respectively; a common block selectively connected to the plurality of functional blocks, and configured to function as a master for controlling the common blocks when the plurality of functional blocks are connected to the common block; and a priority determination unit configured to determine a connection between any one of the plurality of functional blocks and the common block, the method including: accessing, by at least two functional blocks among the plurality of functional blocks, the common block at the same time; comparing priority information of the at least two functional blocks; determining a connection between any one of the at least two functional blocks and the common block based on the comparison result; and broadcasting or multicasting the priority information of the any one connected functional block to some of the plurality of dedicated registers.
- In an embodiment, the method may further include changing priority information of a functional block that attempts to access the common block among the plurality of functional blocks.
- In an embodiment, each of the plurality of dedicated registers may include a priority selection register area, and the priority selection register area stores priority information of a functional block corresponding to a corresponding dedicated register.
- In an embodiment, the priority selection register area may include: a broadcasting flag indicating that the priority determination unit is connected to one of the at least two functional blocks that attempt to access simultaneously; a broadcasting value indicating a priority value of one functional block connected to the common block; and a priority value of a functional block corresponding to the priority selection register area.
- In an embodiment, the method may further include, when any one functional block among the plurality of functional blocks is already connected to the common block, comparing priority information of a functional block that attempts to access the common block with priority information of a functional block that is already connected; and when the priority of the functional block that attempts to access the common block is higher than the priority of the functional block that is already connected, stopping connection of the already-connected functional block and the common block, attempting to access the common block, and connecting a functional block having a higher priority.
- In an embodiment, the method may further include broadcasting or multicasting a priority value of a disconnected module as the broadcasting value.
- The accompanying drawings are included to provide a further understanding of the inventive concept, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the inventive concept and, together with the description, serve to explain principles of the inventive concept. In the drawings:
-
FIGS. 1 and 2 show a block diagram of an integrated device connected to a multi-master according to an embodiment of the present invention; -
FIG. 3 is a view illustrating a data structure of a priority selection register according to an embodiment of the present invention; -
FIG. 4 is a flowchart illustrating operations of a multi-master and an integrated device according to an embodiment of the present invention; and -
FIGS. 5A, 5B and 5C are views illustrating a change in a priority selection register value according to an operation of a multi-master and an integrated device according to an embodiment of the present invention. - The following content merely illustrates the principles of the invention. Therefore, those skilled in the art will be able to devise various devices which, although not explicitly described or illustrated herein, embody the principles of the invention and are included in the concept and scope of the invention. Furthermore, all of the conditional terms and embodiments listed herein are, in principle, intended to be purely for purposes of understanding the concepts of the invention, and are not to be construed as limited to the specifically recited embodiments and conditions.
- The above objects, features and advantages will be described in detail below with reference to the accompanying drawings, and accordingly, those skilled in the art may easily implement the technical idea of the present invention.
-
FIG. 1 is a block diagram of a multi-master collision prevention system including an integrated device connected to a multi-master according to an embodiment of the present invention. - The multi-master collision prevention system of the present invention may include a plurality of functional blocks including a plurality of external modules (the first
external module 200 and the second external module 300) and a plurality of internal modules. - The plurality of
external modules device 100. Preferably, theexternal modules device 100. For example, theexternal modules - Meanwhile, the integrated
device 100 includes a plurality ofinterfaces 120, a plurality ofinternal modules 130, a plurality ofdedicated registers 140 connected to the plurality of internal modules and external modules, apriority determination unit 150, and acommon block 110. At this time, the integrateddevice 100 may be, for example, an integrated power system for a vehicle that supplies power to the motor and the engine of the hybrid vehicle. - The plurality of
interfaces 120 are configured to connect theexternal modules dedicated registers 140 andcommon block 110 in theintegrated device 100. In this embodiment, the plurality ofinterfaces 120 may be, for example, a Serial Peripheral Interface (SPI) communication module. However, the plurality ofinterfaces 120 are not limited to the SPI communication module, and for example, may be various types of interfaces such as a Controller Area Network (CAN) or a Local Interconnect Network (LIN). - When the
interface 120 connected to the firstexternal module 200, that is, thefirst communication unit 122 ofFIG. 2 , is an SPI, the firstexternal module 200 may operate as a master with respect to thefirst communication unit 122. That is, the firstexternal module 200 operates as a master by providing a chip select signal and a clock to thefirst communication unit 122, and thefirst communication unit 122 may operate as a slave. - Meanwhile, the
internal module 130 may be an independent functional block in the integrateddevice 100, and for example, may be a control block or an internal memory block. For example, it may be implemented as a semiconductor intellectual property (IP). For example, if the integrateddevice 100 is a power system chip, theinternal module 130 may be an IP for controlling the power system. Or theinternal module 130 may be a power system chip internal memory. - The plurality of
dedicated registers 140 are registers for storing information necessary for operation of a plurality of functional blocks (e.g., theinternal module 130 or theexternal modules 200 and 300), and are connected to the correspondinginternal module 130 orinterface 120 on a one-to-one basis. In this case, the plurality ofdedicated registers 140 include a priorityselection register area 160 including priority information of the correspondinginternal module 130 orexternal modules priority determination unit 150. - The
priority determination unit 150 may be connected to the plurality ofdedicated registers 140 to read priority information based on a base address and the functional block having the highest priority among the plurality of functional blocks may be connected to access the register of thecommon block 110. Also, when a functional block accessing the register of thecommon block 110 is changed by a priority operation, that is, by an operation of suspending or stopping access according to the priority, the change may be broadcast or multicast through the plurality ofdedicated registers 140. - The register of the
common block 110 is a register for storing information necessary for operation of the common block of theintegrated device 100. It is possible to write or read necessary information from the external or internal module determined by the above-describedpriority determination unit 150. - Hereinafter, an embodiment of a multi-master collision prevention system according to the present invention will be described with reference to
FIG. 2 . - In the multi-master collision prevention system according to the present invention, the first
external module 210 is, for example, a micro-controller of a Hybrid Control Unit (HCU), and the secondexternal module 310 may be, for example, a microcontroller of an Engine Control Unit (ECU). - The first and
second interfaces - The plurality of
dedicated registers external modules internal modules 130, respectively. For example, thededicated register 126 connected to the firstexternal module 210 may be a register for performing an operation related to the HCU independently. In addition, thededicated register 128 connected to the secondexternal module 124 may be a register for performing an operation related to the ECU independently. - If the
integrated device 100 is an automotive power system, thecommon block 110 may be a common block such as a real time clock (RTC), a low side driver (LSD), and a high side driver (HSD) in theintegrated device 100. - The
priority determination unit 150 may include apriority comparison unit 155, abroadcasting unit 155, and aselection unit 158. In addition, thepriority determination unit 150 is connected to the priorityselection register area 160, which is included in each of the plurality ofdedicated registers - The
priority comparison unit 155 may receive priority information from the priorityselection register area 160 included in the plurality ofdedicated registers selection unit 158 based on the priority information. For example, the priority information may be apriority level 440, and the priority may be given higher in descending order of the priority level. - For example, when the priority level of the first
dedicated register 126 is ‘0’ and the priority level of the seconddedicated register 136 is ‘1’, it is assumed that the firstexternal module 210 and the firstinternal module 132 access the register of thecommon block 110 at the same time. At this time, thepriority comparison unit 153 may control theselector 158 so that the firstexternal module 210 connected to the firstdedicated register 126 having a low priority level may access the priority register. - In the case of concurrent access, or if a previously accessing module is pending or suspended in priority order, the
broadcasting unit 155 may broadcast or multicast a priority level and a priority operation status of the corresponding pending or suspended module. - The
selection unit 158 may selectively connect thecommon block 110 with a module having a high priority (or a low priority level). Theselection unit 158 may be implemented with, for example, a multiplexer (MUX). - Through this configuration, when a plurality of external or internal modules access the
common block 110 of theintegrated device 100 at the same time, the multi-master collision prevention system according to the present invention may perform the use of the common block without collision based on the priority information. Or, even if another external or internal module already uses the common block, in a case where an external or internal module requires the use of highly urgent features, the multi-master collision prevention system according to the present invention may control the functions of other modules with low urgency to be performed again after the urgent functions are executed first. - Moreover, the operation of this multi-master collision prevention system is as follows.
- First, when an external module or an internal module attempts to access a register of the
common block 110, thepriority determination unit 150 may connect an external or internal module that attempts to access thecommon block 110, so that the function of the corresponding external or internal module may be performed. - Meanwhile, when several masters (external or internal modules) attempt to access the registers of the
common block 110, thepriority determination unit 150 obtains a priority level from the priorityselection register area 160 of the corresponding module and compares the priority levels of the modules. - The
priority determination unit 150 may control the function of the higher priority module to be performed first based on the comparison result. Alternatively, if the priority levels are the same, thepriority determination unit 150 may control the function of the module that first attempts to access to be performed first. - Or, if a function having a low priority already uses a register of the
common block 110 and a module having a high priority is attempting to access a register of thecommon block 110, thepriority determination unit 150 may stop the connection between the module of the lower priority function and the register of thecommon block 110 and may control the high-priority function module to be connected to the register of thecommon block 110 so that the corresponding function is performed first. - In this case, the
broadcasting unit 158 of thepriority determination unit 150 broadcasts whether or not a priority operation is performed on another external or internal module and the priority levels of the interrupted function. Alternatively, thebroadcasting unit 158 of thepriority determination unit 150 may multicast whether the priority determination operation is performed and the priority level of the interrupted function to the modules that attempt to access it at the same time. - At this time, the module with the lower priority function that attempts to access the register of the
common block 110 continuously, so that after the execution of the function with the higher priority is completed, lower priority functions may be performed. - Meanwhile, although
FIG. 2 shows only two internal modules for the sake of simplicity, the present invention is not limited thereto, and there may be two or more internal modules. - Hereinafter, the data structure of the
priority selection register 160 will be described with reference toFIG. 3 . - As shown in
FIG. 3 , thepriority selection register 160 includes anaddress portion 410, abroadcast flag 420, abroadcast value 430, apriority level 440, and an area of aglobal configuration 450. - The
address portion 410 indicates an address on the register of the corresponding data. - The
broadcast flag 420 relates to whether or not to perform a priority operation. That is, it is an area indicating whether an operation of holding or stopping the access of the colliding external or internal module is performed according to the priority. - The
broadcast value 430 indicates the priority level of the operation that is suspended or stopped as the priority operation is performed. - The
priority level 440 is a value based for determining the master to control the common block. For example, if the priority level is small, it may mean high priority. - For example, when the priority level of the first
dedicated register 126 is ‘0’ and the priority level of the seconddedicated register 136 is ‘1’, thepriority determination unit 150 may control the function, which is to be performed by the firstexternal module 210 connected to the firstdedicated register 126, to have a higher priority than the function, which is to be performed by the firstinternal module 132 connected to the seconddedicated register 136. - The
global configuration 450 is a register value required for the internal orexternal modules common block 110, and performs a common block function based on the data in the area of theglobal configuration 450. - Hereinafter, the operation of the multi-master collision prevention system according to an embodiment of the present invention will be described in detail with reference to
FIGS. 4 andFIGS. 5A to 5B . - First, as shown in
FIG. 5A , it is assumed that initially, the priority level of thefirst interface 122 is set to ‘3’, the priority level of the firstinternal module 132 is set to ‘1’, the priority level of the secondinternal module 134 is set to ‘2’ and the priority level of thesecond interface 124 is set to ‘3’. - Also, a case where the first
internal module 132 attempts to access the registers of thecommon interface 110 and thefirst interface 122 at the same time, or a case where a function with a lower priority already uses the register of thecommon block 110 and a module having a higher priority function attempts to access the register of thecommon block 110 will be described in detail. - First, the first
external module 210 attempts to access the register of the common block 110 (step S510). In this case, when the function to be performed by the firstexternal module 210 is a function requiring urgency such as a vehicle failure notification, the priority level of the initialfirst interface 122 connected to the initial firstexternal module 210 may be updated from ‘3’ to ‘0’ (step S520, seeFIG. 5B ). - In this case, if the first
internal module 132 attempts to access the register of thecommon block 110 concurrently with the firstexternal module 210 or if the function of the firstinternal module 132 is performed first, thepriority determination unit 150 compares the priority levels of the firstinternal module 132 and the firstexternal module 210. That is, the priority level ‘1’ of the firstinternal module 132 and the priority level ‘0’ of the firstexternal module 210 may be compared (step S530, seeFIG. 5B ). - Preferably, the
priority determination unit 150 checks the master (external or internal module) attempting to access the register of thecommon block 110 based on the base address (0x21 inFIGS. 5A to 5B ) of the priorityselection register area 160 of the external or internal module that attempts to access each clock. - As described above, when access to the register of the
common block 110 of the firstinternal module 132 is suspended or interrupted by thepriority determination unit 150, that is, when the priority operation is performed, whether the priority operation is performed and the priority level of the module whose access is suspended or stopped may be broadcast or multicasted (step S540). - As above, when whether the priority operation is performed and the priority level of the module whose access is suspended or stopped are broadcast or multicasted, as shown in
FIG. 5C , thebroadcast flag 420 and thebroadcast value 430 of the priorityselection register area 160 of thededicated register 140 are updated. - As described above, the
broadcast flag 420 is information on a priority operation status, and thebroadcast value 430 corresponds to a priority level of a module whose access is suspended or stopped. - Finally, when the priority level of a module whose access is suspended or stopped through the broadcast value (‘1’) is equal to its own priority level (or the same or a higher priority level), the first
internal module 132 whose access is suspended or interrupted by the priority operation continues to retry the interrupted operation. - Therefore, according to the present invention, it is possible to integrate a plurality of systems, which conventionally operate as slaves, into one system and solve the problems due to integration.
- At this time, in the integrated system, by dividing the resources available to the multi-master into independent blocks and shared blocks based on a register area, the cost and complexity of existing systems may be significantly improved while ensuring the independence of each system. And, if several multi-masters access a common block simultaneously or if it is a late-action but needs to perform a very important function quickly, it solves potential problems to significantly improve system safety.
- Meanwhile, although the present invention has been described with reference to the embodiments shown in the drawings, it is only illustrative, and it will be understood by those skilled in the art that various changes and modifications may be made without departing from the scope of the present invention. Accordingly, the true scope of the present invention should be determined by the technical idea of the appended claims.
Claims (11)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2017-0168626 | 2017-12-08 | ||
KR1020170168626A KR102086027B1 (en) | 2017-12-08 | 2017-12-08 | An Apparatus and a Method for Controlling Multi-Master Modules for Vehicles Based on Priority |
Publications (2)
Publication Number | Publication Date |
---|---|
US20190179787A1 true US20190179787A1 (en) | 2019-06-13 |
US10534740B2 US10534740B2 (en) | 2020-01-14 |
Family
ID=66629736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/204,971 Active US10534740B2 (en) | 2017-12-08 | 2018-11-29 | Device and method for controlling priority-based vehicle multi-master module |
Country Status (4)
Country | Link |
---|---|
US (1) | US10534740B2 (en) |
KR (1) | KR102086027B1 (en) |
CN (1) | CN110059486B (en) |
DE (1) | DE102018220822A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115033517A (en) * | 2022-05-30 | 2022-09-09 | 浙江大学 | Device for realizing multi-wire SPI (serial peripheral interface) transmission based on multiple single-wire SPI interfaces |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111324559A (en) * | 2020-02-27 | 2020-06-23 | 南通琅润达大数据科技有限公司 | Serial port shunting device with independent request |
CN111444124A (en) * | 2020-03-25 | 2020-07-24 | 苏州琅润达检测科技有限公司 | Serial port shunting device with high-frequency autonomous request |
CN112558888A (en) * | 2021-02-25 | 2021-03-26 | 上海飞斯信息科技有限公司 | Multi-host shared storage device based on RapidIO bus link and sharing method thereof |
KR102701770B1 (en) * | 2023-11-15 | 2024-09-04 | 주식회사 긴트 | Method for controlling remotely by using priorty and apparatus thereof |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0227837A (en) * | 1988-07-18 | 1990-01-30 | Nec Corp | Communication control system |
JPH0276338A (en) * | 1988-09-13 | 1990-03-15 | Fujitsu Ltd | Transfer data collision control method |
CA1320281C (en) * | 1988-12-09 | 1993-07-13 | Raymond C. Senez | Bus organized structure with variable arbitration means |
US5774731A (en) * | 1995-03-22 | 1998-06-30 | Hitachi, Ltd. | Exclusive control method with each node controlling issue of an exclusive use request to a shared resource, a computer system therefor and a computer system with a circuit for detecting writing of an event flag into a shared main storage |
US20040128673A1 (en) * | 2002-12-17 | 2004-07-01 | Systemauto, Inc. | System, method and computer program product for sharing information in distributed framework |
US20060117316A1 (en) * | 2004-11-24 | 2006-06-01 | Cismas Sorin C | Hardware multithreading systems and methods |
US20060282836A1 (en) * | 2005-06-09 | 2006-12-14 | Barker Thomas N | System and method for implementing distributed priority inheritance |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6862630B1 (en) * | 2000-08-23 | 2005-03-01 | Advanced Micro Devices, Inc. | Network transmitter with data frame priority management for data transmission |
JP2010140290A (en) * | 2008-12-12 | 2010-06-24 | Panasonic Corp | Multiprocessor system and arbitration method for exclusive control thereof |
KR101188210B1 (en) * | 2010-08-03 | 2012-10-05 | 인하대학교 산학협력단 | Preemtive priority-based Ethernet data scheduling and The System using it |
KR101855399B1 (en) * | 2011-03-24 | 2018-05-09 | 삼성전자주식회사 | System on chip improving data traffic and operating method thereof |
US8977795B1 (en) * | 2011-10-27 | 2015-03-10 | Marvell International Ltd. | Method and apparatus for preventing multiple threads of a processor from accessing, in parallel, predetermined sections of source code |
US9477838B2 (en) * | 2012-12-20 | 2016-10-25 | Bank Of America Corporation | Reconciliation of access rights in a computing system |
-
2017
- 2017-12-08 KR KR1020170168626A patent/KR102086027B1/en active Active
-
2018
- 2018-11-29 US US16/204,971 patent/US10534740B2/en active Active
- 2018-12-03 DE DE102018220822.0A patent/DE102018220822A1/en active Pending
- 2018-12-07 CN CN201811495013.5A patent/CN110059486B/en active Active
Patent Citations (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0227837A (en) * | 1988-07-18 | 1990-01-30 | Nec Corp | Communication control system |
JPH0276338A (en) * | 1988-09-13 | 1990-03-15 | Fujitsu Ltd | Transfer data collision control method |
CA1320281C (en) * | 1988-12-09 | 1993-07-13 | Raymond C. Senez | Bus organized structure with variable arbitration means |
US6330604B1 (en) * | 1994-03-24 | 2001-12-11 | Hitachi, Ltd. | Exclusive control method with each node controlling issue of an exclusive use request to a shared resource, a computer system therefor and a computer system with a circuit for detecting writing of an event flag into a shared main storage |
US6502136B1 (en) * | 1994-03-24 | 2002-12-31 | Hitachi, Ltd. | Exclusive control method with each node controlling issue of an exclusive use request to a shared resource, a computer system therefor and a computer system with a circuit for detecting writing of an event flag into a shared main storage |
US5774731A (en) * | 1995-03-22 | 1998-06-30 | Hitachi, Ltd. | Exclusive control method with each node controlling issue of an exclusive use request to a shared resource, a computer system therefor and a computer system with a circuit for detecting writing of an event flag into a shared main storage |
US9705765B2 (en) * | 2002-12-17 | 2017-07-11 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US10002036B2 (en) * | 2002-12-17 | 2018-06-19 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US10248477B2 (en) * | 2002-12-17 | 2019-04-02 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US20080288954A1 (en) * | 2002-12-17 | 2008-11-20 | Axel Fuchs | System, method and computer program product for sharing information in a distributed framework |
US20190034250A1 (en) * | 2002-12-17 | 2019-01-31 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US7802263B2 (en) * | 2002-12-17 | 2010-09-21 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US20190004880A1 (en) * | 2002-12-17 | 2019-01-03 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US8209705B2 (en) * | 2002-12-17 | 2012-06-26 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US20120266184A1 (en) * | 2002-12-17 | 2012-10-18 | Stragent, Llc | System, method method and computer program product for sharing information in a distributed framework |
US8566843B2 (en) * | 2002-12-17 | 2013-10-22 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US10031790B1 (en) * | 2002-12-17 | 2018-07-24 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US20140096144A1 (en) * | 2002-12-17 | 2014-04-03 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US9575817B2 (en) * | 2002-12-17 | 2017-02-21 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US20170126524A1 (en) * | 2002-12-17 | 2017-05-04 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US20170123869A1 (en) * | 2002-12-17 | 2017-05-04 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US20040128673A1 (en) * | 2002-12-17 | 2004-07-01 | Systemauto, Inc. | System, method and computer program product for sharing information in distributed framework |
US20180203749A1 (en) * | 2002-12-17 | 2018-07-19 | Stragent, Llc | System, method and computer program product for sharing information in a distributed framework |
US20060117316A1 (en) * | 2004-11-24 | 2006-06-01 | Cismas Sorin C | Hardware multithreading systems and methods |
US8640129B2 (en) * | 2004-11-24 | 2014-01-28 | Geo Semiconductor Inc. | Hardware multithreading systems and methods |
US20100257534A1 (en) * | 2004-11-24 | 2010-10-07 | Cismas Sorin C | Hardware Multithreading Systems and Methods |
US7765547B2 (en) * | 2004-11-24 | 2010-07-27 | Maxim Integrated Products, Inc. | Hardware multithreading systems with state registers having thread profiling data |
US20060282836A1 (en) * | 2005-06-09 | 2006-12-14 | Barker Thomas N | System and method for implementing distributed priority inheritance |
Non-Patent Citations (1)
Title |
---|
‘SCHEDULING AND LOCKING IN MULTIPROCESSOR REAL-TIME OPERATING SYSTEMS’ by Bjorn B. Brandenburg, 2011. (Year: 2011) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115033517A (en) * | 2022-05-30 | 2022-09-09 | 浙江大学 | Device for realizing multi-wire SPI (serial peripheral interface) transmission based on multiple single-wire SPI interfaces |
Also Published As
Publication number | Publication date |
---|---|
CN110059486A (en) | 2019-07-26 |
KR102086027B1 (en) | 2020-03-06 |
KR20190068332A (en) | 2019-06-18 |
CN110059486B (en) | 2023-04-11 |
DE102018220822A1 (en) | 2019-06-13 |
US10534740B2 (en) | 2020-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10534740B2 (en) | Device and method for controlling priority-based vehicle multi-master module | |
MX2007009732A (en) | Flow control method to improve data transfer via a switch matrix. | |
IL182733A (en) | Processing system and method of managing access to a memory region | |
CN111971934B (en) | gateway device | |
US7698524B2 (en) | Apparatus and methods for controlling output of clock signal and systems including the same | |
US7373450B2 (en) | Multi-layer bus system having a bus control circuit | |
CN115357926B (en) | AXI bus protocol access authority control method and device based on SoC chip | |
US20210286751A1 (en) | Method For The Assignment Of Addresses By A Master Unit To A Number Of Slave Units | |
US9478982B2 (en) | Power supply system and method | |
KR20160039291A (en) | Devices, systems, and methods of reducing chip select | |
US9218306B2 (en) | Memory sharing circuit employing a buffered address and data bus and preventing bus collision | |
US9003092B2 (en) | System on chip bus system and a method of operating the bus system | |
US6747474B2 (en) | Integrated circuit stubs in a point-to-point system | |
US11025548B2 (en) | Control device and method of vehicle multi-master module based on ring communication topology based vehicle | |
US8244994B1 (en) | Cooperating memory controllers that share data bus terminals for accessing wide external devices | |
US10958472B2 (en) | Direct access to bus signals in a motor vehicle | |
US20150089175A1 (en) | Bus system and method of protected memory access | |
JP6337783B2 (en) | In-vehicle network system | |
CN102841813A (en) | System and method for allocating memory resource | |
US8621262B2 (en) | Semiconductor integrated circuit and method for controlling semiconductor integrated circuit | |
WO2010001515A1 (en) | Bus arbitration device and navigation device using the same | |
CN114996180A (en) | Access control method, system, chip, board card and electronic equipment | |
CN117799550A (en) | Vehicle power mode management method, management system, electronic equipment and vehicle | |
KR20210083851A (en) | Vehicular electronic control unit using multi-core microcontroller | |
JP2011150613A (en) | Data processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HYUNDAI AUTRON CO., LTD., KOREA, REPUBLIC OF Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KIM, KEE BEOM;KIM, YOUNG SUK;REEL/FRAME:047629/0054 Effective date: 20181123 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: HYUNDAI MOTOR COMPANY, KOREA, REPUBLIC OF Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HYUNDAI AUTRON CO., LTD.;REEL/FRAME:055426/0553 Effective date: 20210223 |
|
AS | Assignment |
Owner name: HYUNDAI MOBIS CO., LTD., KOREA, REPUBLIC OF Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 055426 FRAME: 0553. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT;ASSIGNOR:HYUNDAI AUTRON CO., LTD.;REEL/FRAME:055953/0027 Effective date: 20210223 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |