WO2005015414A2 - Attribution de largeur de bande adaptative sur une interconnexion de systeme heterogene distribuant une largeur de bande sur demande - Google Patents

Attribution de largeur de bande adaptative sur une interconnexion de systeme heterogene distribuant une largeur de bande sur demande Download PDF

Info

Publication number
WO2005015414A2
WO2005015414A2 PCT/US2004/025533 US2004025533W WO2005015414A2 WO 2005015414 A2 WO2005015414 A2 WO 2005015414A2 US 2004025533 W US2004025533 W US 2004025533W WO 2005015414 A2 WO2005015414 A2 WO 2005015414A2
Authority
WO
WIPO (PCT)
Prior art keywords
bus
module
receiving
scheduler
command
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.)
Ceased
Application number
PCT/US2004/025533
Other languages
English (en)
Other versions
WO2005015414A3 (fr
Inventor
John Yuan
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.)
VisionFlow Inc
Original Assignee
VisionFlow Inc
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 VisionFlow Inc filed Critical VisionFlow Inc
Publication of WO2005015414A2 publication Critical patent/WO2005015414A2/fr
Publication of WO2005015414A3 publication Critical patent/WO2005015414A3/fr
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation

Definitions

  • VisionFlow.OOOOl entitled SOFTWARE AND HARDWARE PARTITIONING FOR MULTI-STANDARD VIDEO COMPRESSION AND DECOMPRESSION, filed on even date herewith, the teachings of which are incorporated by reference herein.
  • the present invention is generally related to a method and system for performing adaptive bandwidth allocation over a heterogeneous system interconnect, thereby delivering true bandwidth-on-demand.
  • Performing an effective set of communications between on-chip system components is the key to a high-performance System-on-a-Chip (SoC) design, especially when the design involves a data-intensive processing like video compression.
  • SoC components such as processors, LP (Intellectual Property) solutions, memory/storage, and system peripheral functions come from various sources and may have problems in communicating with each other. It is essential for a successful SoC design to have a method or a system that facilitates effective communications between "domestic" and "foreign" system components.
  • the present invention is aimed for solving the most critical system performance problem due to access contention of common memory devices and other shared system resources, especially for applications that require both media processing and networking support.
  • Emerging applications like video broadcast over IP networks (wired or wireless), HDTV, HD-DVD, or networked camera recording, require a support for different video standards and networking protocols in spite of continuous evolution of the standards and protocols.
  • DVD-Forum has mandated that the next generation DVD (HD-DVD or high definition DVD) support three different video formats: H.264, VC-9, and MPEG-2.
  • Worldwide digital TV broadcasters have been promoting H.264 along with the legacy MPEG-2 video for both HDTV broadcast and mobile-TV broadcast.
  • the system components within a SoC can be divided into five groups: (1) Programmable processors, such as RISC processors or DSP's, (2) special-function hardware, such as video compression engine, network protocol engine, etc., (3) high-speed coimectivity/interface, such as 10/100/1000 BASET-T Ethernet, PCI, ATAPI/IDE , (4) low-speed system peripheral device, such as timers, UART, etc., and (5) control/interface to internal/external storage devices, such as DRAM, Flash, SRAM, ROM, etc.
  • the group (5) is the most commonly shared system resources by either a processor or a hardware design.
  • a traditional shared bus design proves to be insufficient for heavy data transfer.
  • a heterogeneous interconnect that mixes a cross-bar architecture and a shared bus architecture is required for improving the system throughput.
  • the cross-bar bus is mainly used for data communication channels between system components that involves heavy data transfer, for example, data transfer between a video engine and a memory subsystem. It is for data flow processing.
  • the shared bus is mainly used for control or less demanding data transfer between system components. It provides a separate path for control flow processing.
  • the primary goals of the strategy are to create a configurable, on-chip communication system that supports all data, control, test and debug flows; to deliver hardware-assisted guaranteed bandwidth allocation to each core (system module with processing capabilities); to decouple core-to- system communications from core functionality; to provide a methodology for creating truly "componentized" cores with sufficient design independence to be reused without rework; and to simplify, speed and make more predictable the design, analysis, verification, debugging and testing of multi-core designs.
  • the first step in the strategy is to incorporate a comprehensive, standard interface protocol within the core that facilitates communication between cores.
  • the protocol must be core-centric rather than system-interconnect-centric. In other words, if the core is to remain untouched as it moves from system to system, its interface must accommodate the unchanging requirements of the core rather than bend to the particular requirements of each system in which it is deployed.
  • the next step in the communication system-based integration strategy is to implement a highly reconfigurable on-chip communication subsystem-a sort of customizable backplane in silicon-that implements the system-level requirements of the SoC. It must support traditional CPU-memory accesses, high-bandwidth links with real-time throughput requirements, as well as lower-speed peripherals.
  • the backplane serves to unify all on-chip communications while providing configurable throughput guarantees to individual cores. As such, the backplane can replace dedicated connections between cores with logical connections over shared interconnect, while simultaneously supporting low-latency access from high-performance CPUs.
  • Each core connects to the backplane through an "agent"-the key to decoupling the cores. Agents implement a system-level communications protocol on top of the actual physical interconnect scheme. Each agent is highly customized to meet the system-level communications requirements of the core to which it is mated (for example, data width, address size and clock frequency). [0017].
  • the agent also provides for efficient utilization of system bandwidth and implements the system-address map, frequency decoupling, control-flow routing and real-time performance guarantees in terms of latency and bandwidth.
  • a significant side benefit of the communication system-based integration strategy is that it localizes all of the long, intercore wires within the backplane. That allows the designer to identify the long wires early in the design and to optimize them without affecting core interface timing.
  • the backplane must be configurable to ensure allocation of sufficient bandwidth for all communication flows inside the SoC.
  • the present invention provides for a configurable subsystem which eliminates the need for expensive speed- matching FIFO resources at each core's interface by treating the shared interconnect as a communication system.
  • the present invention interleaves data transfers from different backplane agents on a per-cycle basis.
  • the system architecture must address the process of allocating communication bandwidth as needed. Unfortunately, the allocation varies from application to application. Often, it is more efficient, especially when transmitting a long stream of data, to allocate bandwidth for several short packets instead of one long packet.
  • bandwidth-on-demand is designed to dynamically allocate the channel bandwidth in response to real time processing requirements determined by the application of interest.
  • the scheme developed adopts a hybrid approach that mixes the static and dynamic scheduling functions.
  • the schedule can be set in a static manner during configuration and can be modified during run time.
  • This hybrid scheme divides system events into two types of timing windows: isochronous and random.
  • the schedule allocates isochronous windows for both video and audio processing because of their critical timing requirements. Spaces between the isochronous windows are open for random system events. These are all available in an asynchronous fashion.
  • the isochronous windows can be re-allocated for random system events if they are not being used.
  • the isochronous windows can be modified if only part of them are needed to be changed for system event usage.
  • the essential tasks can be described hierarchically in a layer structure, as shown in FIG. 4.
  • the initial component of this layered structure is defined as Layer 0.
  • Layer 0, or task characterization determines the nature of the processing tasks in the system architecture. These include periodical, random or conditional periodical.
  • the periodical processing task includes repetitive events that require a nearly fixed amount of processing bandwidth.
  • the random processing task includes events triggered through interrupts, exceptions, or other random system events.
  • An arbitration scheme is chosen initially to resole any conflict in the case there is a contention.
  • the conditionally periodical processing task includes events commonly seen in the media and communication processing area where the periodical behavior starts when a given condition is met.
  • the second component of this layered structure is defined as Layer 1.
  • Layer 1 or initial schedule and priority, schedules for periodical and/or timing critical events, and a priority scheme (including round robins, fixed, 2-bit random, etc.) for random events. They are typically defined during the initial configuration and can be adjusted at run time.
  • the third and final component of this layered architecture is Layer 2, schedule/priority adaptation. This layer deals with scheduling (bandwidth allocation) given processing tasks. The timing of these processing tasks can be modified according to the need in real time processing.
  • Layer 0 processing identifies the nature of the incoming tasks and system resources involved. It also makes high-level decisions in scheduling downstream tasks by categorizing them into periodical, conditionally periodical, and random tasks. It typically assigns time-critical processes such as those involved in audio or video processing functions to isochronous windows, e.g. conditionally periodical or periodical processing windows. Each isochronous window is typically associated with a bus/network initiator (or driver), a system component that initiates or drives the bus/network, e.g.
  • Layer 1 processing follows the decision made in the Layer 0, and loads the desired scheduling information into the hardware scheduler that consists of RAM or programming registers. At this stage, the scheduling is done in a static fashion, as described in FIG 1 by assigning needed isochronous windows in a pre-defined period of time. This is typically performed during the initial system configuration, The scheduler allocates bandwidth initially until it is modified at run time when the Layer 2 processing takes over.
  • the Layer 2 processing performs dynamic scheduling by examining the requested usage patterns from the initiators and decides whether to modify the allocated bandwidth during the system configuration or not. The block diagram in FIG 4 describes this in an overview fashion.
  • FIG 5 and FIG 6 three bus masters (initiators) A, B, and C are requesting the access.
  • the scheduler examines the requested usage pattern from each of them and decides whether to change the initial schedule.
  • the usage pattern typically has the information about how much data is to be transferred and for how long.
  • the key is to have the usage pattern information sent along with the bus request.
  • the priority scheme can be modified as well if the previously chosen one can not satisfy the system given requirement.
  • An interface wrapper is responsible for interfacing with system components that have a foreign communication protocol.
  • the wrapper consists of a bridge function and a temporary storage buffer.
  • FIG 7 describes an example implementation showing the interconnect based on a cross-bar switch network where the bus traffic can flow in a two dimensional array-like bus structure.
  • FIG 8 shows the interconnect based on a single bus shared by all system modules attached to it.
  • the block diagram in FIG 9 shows the design logic of a wrapper/buffer structure which supports the interface wrapper for foreign communication protocols.
  • the present invention provides a flexible, effective and efficient interconnect mechanism that improves on-chip system communication through adaptively modulating the system and processing needs through bandwidth control settings.
  • This mechanism is an adaptive bandwidth allocation scheme, based on a heterogeneous system interconnect.
  • the interconnect can be a shared bus, a cross-bar network, or a hybrid of the two.
  • the three key ideas that make the given adaptive bandwidth allocation scheme of the present invention useful include: (1.) a hybrid scheduling technique for bus events by mixing fixed and dynamic scheduling schemes based on a three-layer task scheduling strategy.
  • a fixed priority bus schedule can initially be define by software running in a processor, and can be modified dynamically by assisting hardware during run time.
  • FIG. 1 shows an adaptive bus/memory bandwidth allocation example utilizing isochronous windows in time to set the expiration times for the video and audio objects
  • FIG. 2 shows an adaptive bus/memory bandwidth allocation example utilizing isochronous windows in time to reallocate full segments of unused audio and video blocks (these objects have expired due to their lack of usefulness within the given window of time);
  • FIG. 3 shows an adaptive bus/memory bandwidth allocation example utilizing isochronous windows in time to reallocate portions of unused or expired audio and/or video blocks;
  • FIG. 4 shows a multi-layered process which examines packet contents and performs dynamic scheduling;
  • FIG. 5 shows a scheduler which examines the data contents to handle process scheduling; [0045] FIG.
  • FIG. 6 shows a low-level overview the scheduler process where usage pattern id and request master id are passed to the scheduler and a grant id is transmitted as a response;
  • FIG. 7 is an architectural implementation example showing the use of a heterogeneous interconnect using a cross-bar;
  • FIG. 8 is an architectural implementation example showing the use of a heterogeneous interconnect using a shared bus;
  • FIG. 9 shows the wrapper and buffer detail and its use with the system interconnect.
  • the system 1000 of the present invention shows a bandwidth slice 1010 which encapsulates an audio stream packet 1030, another audio stream packet 1060, a video stream packet 1040 and another video stream packet 1050.
  • the packets 1030, 1040, 1050, and 1060 occupy varying bandwidth windows within a given period of time. These packets are further encapsulated by a first isochronous window, another isochronous window and a final isochronous window. This encapsulation protects the priority and bandwidth allocation of the given packet. The time outside these windows are open for any random system event to use. Random system events are un-protected within the isochronous encapsulations and they only use available time slots outside the windows.
  • the system 2000 of the present invention includes a bandwidth slice 2010 which encapsulates an audio stream packet 2030, another audio stream packet 2060, a video stream packet 2040 and another video stream packet 2050.
  • the packets 2030, 2040, 2050, and 2060 occupy varying bandwidth windows within a given period of time. These packets are further encapsulated by a first isochronous window, another isochronous window and a final isochronous window. This encapsulation protects the priority and bandwidth allocation of the given packet.
  • the process scheduler which allocated the bandwidth previously, has now determined that the audio stream packet 2030 and the video stream packet 2050 will not use the allocated bandwidth in their encapsulated windows. These windows are then open up for random system processes.
  • the system 3000 of the present invention includes a bandwidth slice 3010 which encapsulates an audio stream packet 3030, another audio stream packet 3060, a video stream packet 3040 and another video stream packet 3050.
  • the packets 3030, 3040, 3050, and 3060 occupy varying bandwidth windows within a given period of time. These packets are further encapsulated by a first isochronous window, another isochronous window and a final isochronous window. This encapsulation protects the priority and bandwidth allocation of the given packet.
  • the process scheduler which allocated the bandwidth previously has now determined that the audio stream packet 3030 will not use its allocated bandwidth at all and the video stream packet 3050 partially use its allocated bandwidth, thereby allowing unused portions of the allocated bandwidth to be made available to random system event processes.
  • the system 4000 of the present invention describes the use of three layers of the scheduler process. Initially, Layer 0 4010 receives a task identifier. The Layer 0 4010 identifies the nature of the incoming task and makes a high-level decision in scheduling downstream tasks. It is here that a time-critical tasks may be assigned its own isochronous window and while other downstream tasks may be re-assigned.
  • the Layer 1 4020 loads the desired scheduling information into the hardware infrastructure.
  • the information from Layer 1 is passed to the Layer 2 process scheduling module 4030 which then examines the requested usage patterns and decides whether the allocated bandwidth needs to be modified or not.
  • the system 5000 of the present invention describes the use of the scheduler in obtaining process prioritization and process grant to access certain system resources, such as system memories, and/or interface devices.
  • This example contains three bus masters, A, B and C, 5010, 5180 and 5190, respectively.
  • Bus master A transmits a request A 5020 and a usage pattern A 5030 to a scheduler 5050 which reads current channel/bandwidth usage policy for isochronous events 5060, priority scheme for random events 5100 and status of bus/system resource 5200 from module 5070, module 5080, and module 5090, respectively.
  • the isochronous channel designation and usage module 5070 transmits a first identifier 5060 which provides information to a scheduler 5050 regarding bandwidth allocations for current isochronous processes within the given process time window. This is basically a list of processes which are in the queue, how long they will be in the queue and the amount of resources they are taking up.
  • the scheduler 5050 also receives a second identifier 5100 regarding the priority and status of possible random processes.
  • the scheduler 5050 receives the identifier 5200 regarding the overall bus/bridge status. This provides information regarding availability of bus/system resources. A scheduler 5050 also considers additional requests and usage patterns 5120, 5130 and 5150, 5160 to determine which request be granted now or later. Once the grant identif ⁇ er(s) are prepared, they are transmitted to the chosen bus master. [0054] Referring now to FIG. 6, the system 6000 of the present invention further describes the use of the scheduler in obtaining process prioritization and process grant identifiers.
  • the scheduler 6020 receives a usage pattern and a master id 6010 which contains information regarding a size of data packets and the number of packets that the bus master wishes to transmit on the system interconnect.
  • the scheduler 6020 also receives a request master identifier 6050 which contains a reference identifier. Once the requests 6010 and 6050 are received by the scheduler 6020, the scheduler queries the module 6040 for isochronous window information from module 6040. The scheduler 6020 receives the isochronous window information 6030 from the module 6040 and begins a comparison process. The scheduler then adjusts its grant logic for the incoming bus request 6010 as well as previous bus allocations and transmits a grant signal through response 6060 to the chosen bus master. [0055] Referring now to FIG. 7, the system 7000 of the present invention further describes the use of the system interconnect using a cross-bar 7010. The cross-bar has a first bus master 7030 and another bus master 7040 attached to it.
  • modules 7080, 7070, 7060 that can be either a bus master or a bus slave.
  • the two slave-only modules are the on-chip SRAM 7020 and the DDR control 7050.
  • Both bus master and master/slave are utilized within the system architecture as two-way communication modules which have the ability to both transmit and receive control process requests as well as data.
  • the bus master 7060 has the ability to open its port through a process command as well as receive and/or transmit digital data packets to/from an outside source.
  • Each bus master or master/slave module contains a buffer and a wrapper which is used to simplify and uniform the communication protocols between the bus module and the communication channel.
  • the system 8000 of the present invention further describes the use of the system interconnect using a shared bus 8010.
  • Each bus master or master/slave module contains a buffer and a wrapper which is used to simplify and uniform the communication protocols between the bus module and the communication channel.
  • the main difference between the shared bus and cross-bar architecture has to do with the ability to provide multichannel communications over the same bridge.
  • the shared bus is just that - the bus is time shared across each of the bus masters.
  • the system 9000 of the present invention further describes the details of the buffer master which contains a system module 9010, a wrapper 9030, a generic interface 9050, a buffer 9100, and a connection to the system interconnect 9060 and/or 9090.
  • Utilization of the wrapper 9030 maintains uniformity in the communication protocol layer so that multiple system modules have the ability to communicate with each other even though their protocols are different (heterogeneous).
  • the system module 9010 In order to begin communication with the system interconnect 9070, the system module 9010 must transmit a request 9020 to the wrapper 9030.
  • the wrapper 9030 receives the request 9020 and performs a protocol conversion if necessary.
  • the wrapper 9030 converts the protocol and transmits the command and data 9040 to the generic bus 9050. If the wrapper 9030 does not require any protocol conversion, it transmits 9040 directly to the generic interface 9050. If a system interconnect 9070 is then ready to receive new command/data, the generic interface 9050 transmits the command 9060 to the system interconnect 9070.
  • the command 9080 is transmitted from the generic bus 9050 to the buffer 9100 and held until the system interconnect 9070 is available. Once the system interconnect 9070 is available to process additional requests, the buffer transmits the command/data 9090 to the system interconnect 9070 for processing.

Landscapes

  • Small-Scale Networks (AREA)
  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)

Abstract

L'invention concerne un système de distribution comprenant : au moins un maître de bus ; un module de désignation et d'utilisation de canal isochrone ; un schéma de priorité pour module utilisateurs aléatoires ; un module de statut de fonctionnement de bus/pont ; et un programmateur couplé en fonctionnement au maître de bus au moins et aux modules.
PCT/US2004/025533 2003-08-08 2004-08-06 Attribution de largeur de bande adaptative sur une interconnexion de systeme heterogene distribuant une largeur de bande sur demande Ceased WO2005015414A2 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US49350903P 2003-08-08 2003-08-08
US60/493,509 2003-08-08

Publications (2)

Publication Number Publication Date
WO2005015414A2 true WO2005015414A2 (fr) 2005-02-17
WO2005015414A3 WO2005015414A3 (fr) 2005-04-14

Family

ID=34135255

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2004/025533 Ceased WO2005015414A2 (fr) 2003-08-08 2004-08-06 Attribution de largeur de bande adaptative sur une interconnexion de systeme heterogene distribuant une largeur de bande sur demande

Country Status (1)

Country Link
WO (1) WO2005015414A2 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119990058A (zh) * 2025-01-22 2025-05-13 联想长风科技(北京)有限公司 一种多soc下外设资源的池化管理设计方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2211725T3 (es) * 1995-04-28 2004-07-16 Matsushita Electric Industrial Co., Ltd. Metodo de transmision de datos.
US7385989B2 (en) * 1996-07-04 2008-06-10 Hitachi, Ltd. Packet communication method and apparatus and a recording medium storing a packet communication program
US6061802A (en) * 1998-07-02 2000-05-09 Advanced Micro Devices, Inc. Software based clock synchronization
EP1102171A3 (fr) * 1999-11-22 2004-09-08 Texas Instruments Incorporated Appareil périphérique de réseau USB

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119990058A (zh) * 2025-01-22 2025-05-13 联想长风科技(北京)有限公司 一种多soc下外设资源的池化管理设计方法及系统

Also Published As

Publication number Publication date
WO2005015414A3 (fr) 2005-04-14

Similar Documents

Publication Publication Date Title
US12572500B2 (en) Scalable network-on-chip for high-bandwidth memory
JP4259751B2 (ja) リアルタイムで動的に帯域幅を割り当てる完全パイプライン式固定待ち時間通信システム
EP1018687B1 (fr) Dispositif de commande de gestion de ports pour la connexion de modules fonctionnels diverses
US7412588B2 (en) Network processor system on chip with bridge coupling protocol converting multiprocessor macro core local bus to peripheral interfaces coupled system bus
KR101077900B1 (ko) 네트워크 효율성을 고려한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법 및 그에 의해 통신하는 인터페이스 장치
JP5036120B2 (ja) 非ブロック化共有インターフェイスを持つ通信システム及び方法
CN103077141B (zh) 一种基于amba总线的自适应实时加权优先仲裁方法及仲裁器
JP2008135068A (ja) スプリットバス及びタイムスロットインターフェースバス調停を用いる共有デバイス並びにメモリ
JP5853211B2 (ja) バスインタフェース装置、中継装置、およびそれらを備えたバスシステム
CN101223745A (zh) 用于通信资源分配的电子设备和方法
JP2007529808A (ja) 集積回路及び通信サービスマッピング方法
US20050030971A1 (en) Adaptive bandwidth allocation over a heterogeneous system interconnect delivering true bandwidth-on-demand
EP2975812A1 (fr) Système de bus, et programme informatique
KR20160004365A (ko) 크레딧 기반의 중재를 위한 서비스 레이트 재분배
WO2013073172A1 (fr) Dispositif relais, procédé de commande de dispositif relais et programme informatique
CN101449253A (zh) 多处理器网关
Goossens et al. Interconnect and Memory Organization in SOCs for Advanced Set-Top Boxes and TV: Evolution, Analysis, and Trends
TW202226032A (zh) 微型晶片網路及微型分區基礎結構
EP1222551B1 (fr) Controleur dma asynchrone centralise a canaux multiples
CN117951061A (zh) 一种多通道数据总线的仲裁方法
EP4385133A2 (fr) Interconnexion de régions reconfigurables dans un réseau prédiffusé programmable par l'utilisateur
US20200233829A1 (en) Multi-lane system power management interface
US20060090024A1 (en) Bus controller
Wang et al. A dynamic priority arbiter for Network-on-Chip
US6513083B1 (en) Hierarchical bus arbitration

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase