WO2006069130A2 - Media memory system - Google Patents
Media memory system Download PDFInfo
- Publication number
- WO2006069130A2 WO2006069130A2 PCT/US2005/046303 US2005046303W WO2006069130A2 WO 2006069130 A2 WO2006069130 A2 WO 2006069130A2 US 2005046303 W US2005046303 W US 2005046303W WO 2006069130 A2 WO2006069130 A2 WO 2006069130A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- memory
- processor
- secondary processor
- media
- primary
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1072—Decentralised address translation, e.g. in distributed shared memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
Definitions
- Implementations of the claimed invention generally may relate to communication of media information and, more particularly, to memory access for multiple media processors.
- Media-capable PC systems require high speed memory systems for both the host CPU and media processor(s).
- the CPU and media processors may cache frequently used data and address translations. Certain parts of the media processing may be subject to strict frame timing constraints associated with live video and audio, suggesting the need for separately stored address translations.
- the CPU and media processors preferably have rapid access to a common memory system to perform their different parts of the media processing and for the various media processing units to synchronize quickly between themselves and the CPU.
- FIG. 1 illustrates an example system
- FIG. 2 illustrates an example implementation of a media memory process
- FIG. 3 is a flow chart illustrating an example process of providing a media memory system.
- FIG. 1 illustrates an example system.
- System 100 includes a processor 102, which in one embodiment may be a parent processor (also referred to for descriptive reasons as a "parent" processor).
- System 100 may also include one or more additional processors 104, which in one embodiment may be referred to as "media” processors (also referred to for descriptive reasons as “additional” processors).
- the embodiment is not restricted to use with a particular type of processor. Indeed, the embodiment is described in connection with generally understood structures and signals of processors and memories.
- Processors 102 and 104 may include a general-purpose or a specific-purpose processing device and/or logic.
- Processor 102 and 104 may be arranged to process media information. Particular embodiments, however, include structures presently used in the Pentium® microprocessor marketed by Intel Corporation and in related chip sets.
- additional processors 104 process media information (and possibly other communication-related information).
- the media information transmitted may include video and/or voice information, but the claimed invention is not limited in this regard.
- System 100 may receive and process other types of media information consistent with the description herein.
- the media information processed by processors may include video information encoded in a format such as MPEG-I, MPEG-2, MPEG-4, H.264, Windows Media Video version 9 (WMV9), JPEG2000 and Advanced Video System (AVS) formats.
- WMV9 Windows Media Video version 9
- JPEG2000 and Advanced Video System (AVS) formats The claimed invention is not limited to the formats specifically mentioned herein, rather any now-known or later- developed media format may be used in accordance with the schemes disclosed herein.
- the media information may also or alternately include other information, such as telephony or other audio information.
- Most general purpose microprocessors make use of virtual or demand-paged memory schemes, where sections of a program's execution environment are mapped into physical memory as needed.
- Virtual memory schemes allow the use of physical memory much smaller in size than the linear address space of the microprocessor, and also provide a mechanism for memory protection so that multiple tasks (programs) sharing the same physical memory cannot adversely interfere with each other.
- Parent processor 102 communicates with memory 106 via chipset 108.
- Chipset 108 may also serve as a bridge to other busses, such as peripheral component bus, which connects to media processors 104 and various I/O devices 110.
- a microprocessor refers to a location using a linear address, but an object is retrieved from a specific memory location by providing its physical address on an address bus.
- Linear addresses may be the same as physical addresses, in which case address translation is not required.
- a virtual memory scheme is employed in which linear addresses are translated into physical addresses.
- a linear address may also be referred to as a virtual address.
- the linear address space is the set of all linear addresses generated by a microprocessor, whereas the physical address space is the set of all physical addresses.
- a virtual or demand-paged memory system may be illustrated as a mapping between a linear (virtual) address space and a physical address space.
- linear and physical address spaces are divided into blocks of contiguous addresses, customarily referred to as pages if they are of constant size or are any of several fixed sizes.
- a typical page size may be 4KBytes, for example.
- Example implementations of system 100 may include memory references generated by parent processor 102 and a plurality of additional processors 104 accessing common memory 106, although the claimed invention is not limited in this regard.
- FIG. 2 illustrates an example implementation of a media memory process.
- processor 202 additional processors 204, memory 206 and address translation is illustrated.
- Additional processors 204 may share memory 206 with parent processor 202.
- parent processor 202 and additional processors 204 in the form of media processors share the address translation system in situations where media frame timing requirements are less stringent.
- Parent processor 202 may include a control unit (not shown) which has numerous registers provided therein including a control register 206 such as CR3.
- Control register 208 contains an address where a page directory is located.
- Embodiments of the invention maintain the same common data structures and some of the same operating procedures to manage the contents of control register 208. At the same time, a duplicate of the data structures is provided for additional processors 204.
- Concurrent memory access for multiple media processors 204 may be provided via separate translation table hardware, each private to a single media application. Since parent processor address translations match the media processor(s)' translations, parent processor 202 may exchange memory pointers without alteration. As discussed in detail below, one way to implement this is to copy the parent processor's page directory for a given media application to the media processor's page directory. This may be done when the media application allocates memory that may be shared by a media application running on parent processor 202 and media processor(s) 204.
- main memory 214 may be retained rather than swapped to disk. Retaining data in main memory 214 constrains the maximum access latency seen by media applications, which allows them to be directly gated by media timing signals. Data may be simultaneously cacheable from the parent processor 202 and media processors 204 without requiring it to be swapped to disk, as in conventional arrangements.
- Concurrent memory access allows a media application's forward progress to be gated directly by appropriate media timing signals, such as the display system's vertical retrace signal, or a synchronization signal generated by an incoming TV stream, rather than relying on the parent processor's operating system for these timing services. This may also allow for improved robustness against "dropped video frames" for reduced video buffering which lowers cost, or for reduced media processing latency, which may be important for selected interactive applications and also for simpler designs since media processors 204 do not need pre-emptive scheduling hardware. Concurrent memory access may also eliminate swap overhead that may occur if media processor(s) 204 must run the media application only when the parent application is running on parent processor 202.
- Each media memory transaction to access its region of physical memory may be limited, preventing a malfunction in one application from corrupting data belonging to another application.
- the translation system may signal an addressing fault. This may be accomplished in the media processors' memory address translation units where the media process ID selects the proper address translation for that process.
- FIG. 2 illustrates a generic two-level hierarchical mapping comprising directory tables and page tables.
- Page directory tables and page tables are stored in physical memory, and are usually themselves equal in size to a page.
- a page directory table entry (PDE) points to one or more page tables in physical memory, and a page table entry (PTE) points to a page in physical memory.
- Parent processor 202 and additional processors 204 share main memory 206.
- control register 208 points to a page directory.
- Control register 208 chooses page directory memory 210.
- entries in page directory 210 point to page tables 212. Entries in those pages point to the actual pages 214 of memory where the user data resides.
- Some microprocessors employ several modes for translating linear addresses into physical addresses. In one mode, the first 12 bits of a linear address are used as an offset to a physical address within a page frame, the next 10 bits of the linear address are used as an offset into a page table, and the highest 10 bits of the linear address are used as an offset into a page directory.
- modes for translating 32 bit linear addresses may be used as well and the present embodiment is not limited to any particular mode or to a 32 bit linear address.
- Embodiments of the invention are directed to the memory system that does address translation.
- the same or similar data structures and operating procedures to manage the contents of control register 212 are maintained even when parent process 202 is swapped out.
- a duplicate of the data structures is provided for additional processes 204.
- Data structures include page directories 208, page tables 210, and page frames 206. Entries in those pages point to the actual pages 214 of memory where the user data is stored.
- the contents of page tables 212 are stored in any suitable memory component such as main memory 206.
- Page table directory 210 and page tables 210 are stored in main memory 206 and accessed as described herein.
- this allows additional processors 204, such as media processors, to have access to memory 206 after parent process 202 is swapped out.
- parent process 202 when parent process 202 is swapped out, its address mapping is swapped out too and its memory is no longer accessible. For example, in running a video encode stream, media processors 204 may be executing another program as well.
- parent processor 202 is swapped out, the address space may become inaccessible for both parent processor 202 and media processors 204.
- the present embodiment provides media processor address mappings that are persistent, despite parent process 202 being swapped out, to meet real time media processing deadlines.
- a shared memory is attached to individual processing engines.
- Media processor 204 is uninterrupted while the application running on parent processor 202 is swapped out.
- application running on parent processor 202 may be swapped out so the operating system can run something else on parent processor 202.
- a timer based application on Windows operating system was scheduled to run.
- an application running on parent processor 202 may be swapped out because the user changed desktop focus.
- Certain media applications, such as video encode or decode preferably run uninterrupted to the end of the video frame even if the application on the parent processor 202 must be swapped out.
- page tables are set up in a copy operation 216.
- the page directory 210 that was in use before the parent application was swapped out may remain.
- the parent processor 202 running in the parent processor context then provides an instruction to duplicate address translation data for the media processors 204 in use.
- media processors 204 run a video application, such as bringing information in from a tuner, processing and playing it back on a television or computer monitor.
- parent processor 202 such as formatting a floppy disk.
- the operating system interrupts the media processors 204 so main processor 202 can run the floppy disk utility application.
- the operating system halts the application, and reloads control register 208 with a different page table address (or different set of page tables).
- the application running on additional processors 204 ceases until the operating system resumes executing the original process.
- the page mappings in the media processor context are not disturbed by changing the contents of control register 208.
- Media processors 0-n 204 continue processing because they have a valid page directory 218 and valid page tables 220 that still point to physical memory 214 that is accessible even though the top set of page tables 212 (copied during the copy operation 216) have been inactivated.
- the page directory 210 and page tables 212 associated with parent processor 202 are reactivated. If the operating system restored the previous contents of control register 208, the process is completed. If not, new information is loaded into the two sets of page tables 212 and 220.
- FIG. 3 is a flow chart illustrating a process 300 of providing a media memory system for uninterrupted processing of information by additional processors sharing a memory with a parent processor when a parent processor is interrupted.
- the application executing on a parent processor can be suspended without disturbing applications running on additional processors.
- process 300 may be described with regard to system 200 shown in FIG. 2 for ease of explanation, the claimed invention is not limited in this regard.
- Parent processor 202 and media processors 204 run parallel operations concurrently using shared memory 214 (act 302). [0029] It is then determined whether a new task is about to be implemented on parent processor 202 (act 304). For example, a new task may be detected when the parent processor 202 runs to the end of its timeslot or another higher priority must be run instead. [0030] If act 304 does not detect a new task about to be implemented on parent processor 202, processing continues (act 302). If act 304 detects new task about to be implemented on parent processor 202, operating system may then provide instructions to halt what is currently running on parent processor 202 and save its memory addressing context (act 306).
- Operating system may reload control register 208 with new context associated with the scheduled task that is about to start (act 308).
- parent processor 202 provides an instruction to copy page directory 210 and page tables 212 for media processors 104 (act 310).
- Duplicate page directories 218 and page tables 220 are set up in the copy operation (act 312).
- page directory 210 and page tables 212 are copied for media processors 204.
- the instructions that were about to be executed are known so execution starts at that the last address and instruction. The operating system jumps to the last address and instruction and begins execution (act 312).
- Parent processor 202 and additional processors (in media processor context) 204 run concurrently (act 314).
- Processors may be implemented, for example, with a conventional processor 202 plus some number of smaller processor cores, corresponding to additional processors 204.
- Top context would correspond to a single IA 32 processor (or hyper threaded one or multiple of them).
- CPU and media processors may cache frequently used data and address translation. Certain parts of the media processing may be subject to timing constraints associated with live video and audio suggesting the need for a separately stored address translation.
- Process 300 may be implemented, for example, in software that may be executed by processors 202 and 204 or another portion of local system 200.
- Process 300 may be implemented, for example, in software that may be executed by processors 202 and 204 or another portion of local system 200.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
- Multi Processors (AREA)
- Storage Device Security (AREA)
Abstract
Description
Claims
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP05854940A EP1839157B1 (en) | 2004-12-22 | 2005-12-20 | Media memory system |
CN2005800443314A CN101088077B (en) | 2004-12-22 | 2005-12-20 | Memory access method and device for multiple processors |
JP2007548420A JP4996479B2 (en) | 2004-12-22 | 2005-12-20 | Media memory system |
KR1020077014245A KR101202154B1 (en) | 2004-12-22 | 2005-12-20 | Media memory system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/022,503 | 2004-12-22 | ||
US11/022,503 US7490215B2 (en) | 2004-12-22 | 2004-12-22 | Media memory system and method for providing concurrent memory access to a plurality of processors through separate translation table information |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2006069130A2 true WO2006069130A2 (en) | 2006-06-29 |
WO2006069130A3 WO2006069130A3 (en) | 2006-09-08 |
Family
ID=36274494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2005/046303 WO2006069130A2 (en) | 2004-12-22 | 2005-12-20 | Media memory system |
Country Status (7)
Country | Link |
---|---|
US (1) | US7490215B2 (en) |
EP (1) | EP1839157B1 (en) |
JP (2) | JP4996479B2 (en) |
KR (2) | KR20090016520A (en) |
CN (1) | CN101088077B (en) |
TW (1) | TWI308693B (en) |
WO (1) | WO2006069130A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8667249B2 (en) | 2004-12-22 | 2014-03-04 | Intel Corporation | Systems and methods exchanging data between processors through concurrent shared memory |
US10198361B2 (en) | 2012-08-17 | 2019-02-05 | Intel Corporation | Memory sharing via a unified memory architecture |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7490215B2 (en) * | 2004-12-22 | 2009-02-10 | Intel Corporation | Media memory system and method for providing concurrent memory access to a plurality of processors through separate translation table information |
US20080109607A1 (en) * | 2006-11-02 | 2008-05-08 | International Business Machines Corporation | Method, system and article for managing memory |
US7890472B2 (en) | 2007-09-18 | 2011-02-15 | Microsoft Corporation | Parallel nested transactions in transactional memory |
US20090182977A1 (en) * | 2008-01-16 | 2009-07-16 | S. Aqua Semiconductor Llc | Cascaded memory arrangement |
US8669990B2 (en) * | 2009-12-31 | 2014-03-11 | Intel Corporation | Sharing resources between a CPU and GPU |
US9104690B2 (en) | 2011-01-27 | 2015-08-11 | Micron Technology, Inc. | Transactional memory |
US8683175B2 (en) * | 2011-03-15 | 2014-03-25 | International Business Machines Corporation | Seamless interface for multi-threaded core accelerators |
US9378572B2 (en) * | 2012-08-17 | 2016-06-28 | Intel Corporation | Shared virtual memory |
US9170954B2 (en) * | 2012-12-10 | 2015-10-27 | International Business Machines Corporation | Translation management instructions for updating address translation data structures in remote processing nodes |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6049853A (en) * | 1997-08-29 | 2000-04-11 | Sequent Computer Systems, Inc. | Data replication across nodes of a multiprocessor computer system |
US6286092B1 (en) * | 1999-05-12 | 2001-09-04 | Ati International Srl | Paged based memory address translation table update method and apparatus |
US6684305B1 (en) * | 2001-04-24 | 2004-01-27 | Advanced Micro Devices, Inc. | Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4270167A (en) * | 1978-06-30 | 1981-05-26 | Intel Corporation | Apparatus and method for cooperative and concurrent coprocessing of digital information |
JPS63197255A (en) * | 1987-02-12 | 1988-08-16 | Matsushita Electric Ind Co Ltd | Address converter |
JP2586112B2 (en) * | 1988-07-13 | 1997-02-26 | 富士通株式会社 | Address conversion table access control method |
JPH0458347A (en) * | 1990-06-27 | 1992-02-25 | Nec Corp | Control system for shared address space |
US5727179A (en) * | 1991-11-27 | 1998-03-10 | Canon Kabushiki Kaisha | Memory access method using intermediate addresses |
JP2974526B2 (en) * | 1992-12-18 | 1999-11-10 | 富士通株式会社 | Data transfer processing method and data transfer processing device |
JPH0822418A (en) * | 1994-07-07 | 1996-01-23 | Mitsubishi Electric Corp | Virtual address space managing device |
US5742840A (en) * | 1995-08-16 | 1998-04-21 | Microunity Systems Engineering, Inc. | General purpose, multiple precision parallel operation, programmable media processor |
JP3557026B2 (en) * | 1996-01-12 | 2004-08-25 | 株式会社東芝 | Virtual memory management method |
US6658477B1 (en) * | 1999-05-12 | 2003-12-02 | Microsoft Corporation | Improving the control of streaming data through multiple processing modules |
US6891543B2 (en) * | 2002-05-08 | 2005-05-10 | Intel Corporation | Method and system for optimally sharing memory between a host processor and graphics processor |
JP2004206424A (en) * | 2002-12-25 | 2004-07-22 | Hitachi Ltd | Data processing device and data transfer method for data processing device |
JP3828553B2 (en) * | 2004-04-21 | 2006-10-04 | 株式会社東芝 | Virtual memory management method |
US7490215B2 (en) * | 2004-12-22 | 2009-02-10 | Intel Corporation | Media memory system and method for providing concurrent memory access to a plurality of processors through separate translation table information |
-
2004
- 2004-12-22 US US11/022,503 patent/US7490215B2/en active Active
-
2005
- 2005-12-20 EP EP05854940A patent/EP1839157B1/en active Active
- 2005-12-20 JP JP2007548420A patent/JP4996479B2/en not_active Expired - Fee Related
- 2005-12-20 CN CN2005800443314A patent/CN101088077B/en not_active Expired - Fee Related
- 2005-12-20 KR KR1020097001823A patent/KR20090016520A/en not_active Application Discontinuation
- 2005-12-20 KR KR1020077014245A patent/KR101202154B1/en active IP Right Grant
- 2005-12-20 WO PCT/US2005/046303 patent/WO2006069130A2/en active Application Filing
- 2005-12-21 TW TW094145534A patent/TWI308693B/en not_active IP Right Cessation
-
2011
- 2011-07-28 JP JP2011165519A patent/JP5335041B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6049853A (en) * | 1997-08-29 | 2000-04-11 | Sequent Computer Systems, Inc. | Data replication across nodes of a multiprocessor computer system |
US6286092B1 (en) * | 1999-05-12 | 2001-09-04 | Ati International Srl | Paged based memory address translation table update method and apparatus |
US6684305B1 (en) * | 2001-04-24 | 2004-01-27 | Advanced Micro Devices, Inc. | Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8667249B2 (en) | 2004-12-22 | 2014-03-04 | Intel Corporation | Systems and methods exchanging data between processors through concurrent shared memory |
US9122577B2 (en) | 2004-12-22 | 2015-09-01 | Intel Corporation | Systems and methods exchanging data between processors through concurrent shared memory |
US9563570B2 (en) | 2004-12-22 | 2017-02-07 | Intel Corporation | System and methods exchanging data between processors through concurrent shared memory |
US10102141B2 (en) | 2004-12-22 | 2018-10-16 | Intel Corporation | System and methods exchanging data between processors through concurrent shared memory |
US10691612B2 (en) | 2004-12-22 | 2020-06-23 | Intel Corporation | System and methods exchanging data between processors through concurrent shared memory |
US10198361B2 (en) | 2012-08-17 | 2019-02-05 | Intel Corporation | Memory sharing via a unified memory architecture |
US10929304B2 (en) | 2012-08-17 | 2021-02-23 | Intel Corporation | Memory sharing via a unified memory architecture |
US11531623B2 (en) | 2012-08-17 | 2022-12-20 | Intel Corporation | Memory sharing via a unified memory architecture |
Also Published As
Publication number | Publication date |
---|---|
JP5335041B2 (en) | 2013-11-06 |
KR20090016520A (en) | 2009-02-13 |
WO2006069130A3 (en) | 2006-09-08 |
TW200636459A (en) | 2006-10-16 |
KR20070086561A (en) | 2007-08-27 |
US20060136693A1 (en) | 2006-06-22 |
EP1839157A2 (en) | 2007-10-03 |
CN101088077B (en) | 2010-06-09 |
JP2008525894A (en) | 2008-07-17 |
JP4996479B2 (en) | 2012-08-08 |
JP2011253551A (en) | 2011-12-15 |
US7490215B2 (en) | 2009-02-10 |
TWI308693B (en) | 2009-04-11 |
EP1839157B1 (en) | 2012-07-25 |
CN101088077A (en) | 2007-12-12 |
KR101202154B1 (en) | 2012-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10691612B2 (en) | System and methods exchanging data between processors through concurrent shared memory | |
EP1839157B1 (en) | Media memory system | |
US8316212B2 (en) | Translation lookaside buffer (TLB) with reserved areas for specific sources | |
US7464198B2 (en) | System on a chip and a method for programming a DMA controller in a system on a chip | |
US8386748B2 (en) | Address translation unit with multiple virtual queues | |
US5906001A (en) | Method and apparatus for performing TLB shutdown operations in a multiprocessor system without invoking interrup handler routines | |
US5974480A (en) | DMA controller which receives size data for each DMA channel | |
US8694755B1 (en) | Virtual memory management for real-time embedded devices | |
US20080270739A1 (en) | Management of copy-on-write fault | |
JP2008501190A (en) | Mechanism to invalidate data conversion buffer items in multiprocessor systems | |
WO2008031678A1 (en) | Dmac address translation miss handling mechanism | |
JP4965974B2 (en) | Semiconductor integrated circuit device | |
JP2008123333A5 (en) | ||
CN1908923A (en) | Data processing system and memory device arbitrating method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 200580044331.4 Country of ref document: CN |
|
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 KM KN KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM 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 IS IT LT LU LV 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 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2007548420 Country of ref document: JP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020077014245 Country of ref document: KR |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2005854940 Country of ref document: EP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1020097001823 Country of ref document: KR |