BAILII is celebrating 24 years of free online access to the law! Would you consider making a contribution?
No donation is too small. If every visitor before 31 December gives just £1, it will have a significant impact on BAILII's ability to continue providing free access to the law.
Thank you very much for your support!
[Home] [Databases] [World Law] [Multidatabase Search] [Help] [Feedback] | ||
England and Wales Court of Appeal (Civil Division) Decisions |
||
You are here: BAILII >> Databases >> England and Wales Court of Appeal (Civil Division) Decisions >> HTC Corporation v Gemalto SA [2014] EWCA Civ 1335 (22 October 2014) URL: http://www.bailii.org/ew/cases/EWCA/Civ/2014/1335.html Cite as: [2015] RPC 17, [2014] EWCA Civ 1335 |
[New search] [Printable PDF version] [Help]
ON APPEAL FROM THE HIGH COURT OF JUSTICE
CHANCERY DIVISION
PATENTS COURT
MR JUSTICE BIRSS
London, WC2A 2LL |
||
B e f o r e :
LORD JUSTICE FLOYD
and
LORD JUSTICE VOS
____________________
HTC CORPORATION | Claimant/ Respondent | |
- and - | ||
GEMALTO S.A. | Defendant/ Appellant |
____________________
Michael Tappin QC and Ben Longstaff (instructed by Powell Gilbert LLP) for the Respondent
Hearing dates: 15-17 July 2014
____________________
Crown Copyright ©
Lord Justice Floyd:
Technical background
The 865 patent
"In a microcontroller, the amount of each kind of memory available is constrained by the amount of space on the integrated circuit used for each kind of memory. Typically, RAM takes the most space, and is in shortest supply. ROM takes the least space, and is abundant. EEPROM is more abundant than RAM, but less than ROM."
"In general, in another aspect, the invention features a microcontroller that has a semiconductor substrate and a memory located in the substrate. A programming language interpreter is stored in the memory and is configured to implement security checks. A central processing unit is located in the substrate and is coupled to the memory."
"In general, in another aspect, the invention features a microcontroller that includes a memory which stores an application and an interpreter. The application has a class file format. A processor of the microcontroller is coupled to the memory and is configured to use the interpreter to interpret the application for execution."
The claims
"A microcontroller having a set of resource constraints and comprising: a memory,
an interpreter loaded in memory and operating within the set of resource constraints, the microcontroller characterized by having:
at least one application loaded in the memory to be interpreted by the interpreter, wherein the at least one application is generated by a programming environment comprising:
a) a compiler for compiling application source programs in high level language source code form into a compiled form,b) a converter for post processing the compiled form into a minimized form suitable for interpretation by the interpreter."
Claim 3
The microcontroller of Claims 1 or 2 wherein the compiled form is in a standard Java class file format and the converter accepts as input compiled form in the standard Java class file format and produces output in a form suitable for interpretation by the interpreter.
Claim 15
A method of programming a microcontroller having a memory and a processor operating according to a set of resource constraints, the method comprising the steps of:
inputting an application program in a first programming language;
compiling the application program in the first programming language into a first intermediate code associated with the first programming language;
wherein the first intermediate code being interpretable by at least one first intermediate code virtual machine;
wherein the method of programming a microcontroller is characterized by:
converting the first intermediate code into a second intermediate code;
wherein the second intermediate code is interpretable by at least one second intermediate code virtual machine; and
loading the second intermediate code into the memory of the microcontroller (10).
The issues
Issue 1: What is the proper construction of "a microcontroller having a set of resource constraints and comprising a memory" ?
"The parties' rival constructions of the term microcontroller advanced in closing were far apart. HTC submitted that to the skilled addressee what the patent means by the term microcontroller is a reference to a single chip which contained a CPU and also had all its memory resources on the chip. In summary Mr Tappin's argument was that this was the normal usage of the term microcontroller which the skilled addressee would have been aware of and when they read the patent, they would see that the patentee was using the word in that sense.
Gemalto's case is summarised in paragraphs 99 - 100 of its closing argument:
"99. Microcontroller is an ordinary word in this technical field, with no special meaning to be derived exclusively from the description of the patent or externally. It means simply a controller which contains a microprocessor - hence micro-controller. The "controller" element connotes that it is not just a microprocessor, but also contains the elements necessary for it to exercise control, and so includes other functional elements such as memory, input/output etc.
100. In context, it is clear that the distinction being drawn in [0006] to [0009] of the background section of the patent and the purposes of the limitation to a "microcontroller" in the claim is between (a) microprocessor-based computers (i.e. general purpose computers) and (b) microcontrollers (in the sense of a dedicated system, as used in an embedded system). The claim is directed to dedicated systems - viz microcontrollers."
Amongst other things therefore, Gemalto denies that the memory has to be on the same silicon substrate as the CPU."
(my emphasis)
Microcontroller outside the patent
i) The term "single chip microcontroller" was not a widely used term in 1996. That term had been relied on by Gemalto to suggest that, absent the qualifier "single chip", a microcontroller did not necessarily have to be on a single chip (judgment [69]).
ii) The term "ROMless microcontroller" was a familiar term to those in the field in 1996: this did not mean however that the "typical meaning" of the term microcontroller was not a single chip with CPU, memory, I/O all on the chip (judgment [70]).
iii) An example of a chip which included a CPU which was not a microcontroller was the 8080 chip. The 8080 chip needed extra memory to function as a computer (judgment [71]).
iv) There was common ground between the experts that when a microcontroller is connected to external memory and the CPU is executing code using that external memory; it is behaving as a microprocessor and not a microcontroller (judgment [74] and [75]).
v) HTC did not challenge Professor Paradinas' (Gemalto's expert's) view that while a microcontroller would have typically included both volatile and nonvolatile memory on-chip, this did not preclude a microcontroller from accessing external off-chip memory (judgment [76]).
vi) Professor Paradinas had not gone as far as to suggest that something could be a microcontroller and yet have neither RAM nor non-volatile memory on chip (judgment [77]).
vii) There was no universal definition of "microcontroller": it was used in different ways in different contexts. It did not have the precise meaning which Dr Greaves (HTC's expert) had sought to fashion for it: (judgment [78]);
viii) One of the senses in which "microcontroller" was used was a chip: so if you told a skilled person that a particular chip was a microcontroller he would expect it to contain, on a single silicon substrate, a CPU, RAM and ROM, and I/O devices (judgment [79]). This was the normal usage in 1996.
ix) An extended sense of the normal usage included variants such as ROMless microcontrollers and microcontrollers which could access off-chip memory. However all microcontroller chips had more than just a CPU (judgment [80]).
x) The term microcontroller could also be used to describe an embedded or dedicated system as in Gemalto's then favoured construction. If one pointed a skilled person to a washing machine and asked them what was inside controlling the machine, they might say a microcontroller. That usage of the term microcontroller was not referring to a chip as such at all. The weight of the evidence was that this usage was not common in 1996 but it was one of the senses in which the word had been used.
"I am not satisfied I was shown any example of a microcontroller chip with no on-chip memory (ignoring registers) and I reject the idea that a skilled person using the language in its normal or extended sense would be comfortable calling a chip with no on-chip memory a microcontroller."
(a) The CMOS 80C31/80C51 and 87C51 8-bit microcontrollers. These are described in an August 1996 Philips datasheet. The microcontrollers in the range are described as "single-chip". The 80C31 is described as ROMless. Dr Greaves accepted that, in that variant, all the ROM was external. The datasheet suggests, however, that the chip has 128x8 RAM, and Dr Greaves was not asked about this. Mr Mellor accepted before us that it was at least not clear whether there was RAM on chip. Thus his first example does not contradict what the judge said at [80];
(b) The Zilog Z86C93 microcontroller. This is described in a 1992 datasheet. The judge said at [71]: "This was a ROMless microcontroller which could access 64 Kbytes of external memory. Dr Greaves' position on the Z86C93 was the same as for all the examples put to him. Chips are made in families, in this case Z8 family of microcontrollers well known in the early 1990s. It is a ROMless version of a microcontroller and is part of the family. Other members of the family will have things on-chip. " It was not suggested to Dr Greaves that it had no memory (e.g. RAM) on-chip. It is true that the only reference to program and data memory is external, and that one would normally associate program memory with ROM and data memory with RAM. However the example is a long way from being an "absolutely unequivocal" contradiction of the judge, as Mr Mellor submitted.
(c) The NEC 32-bit V850E/CA ROMless Microcontroller. We were shown a press release announcing the launch of this device dated October 2002. Apart from being ROMless, the device is said to be available with two CAN channels and 12 KB of RAM or four CAN channels with 16 KB of RAM. Although the press release goes on to say that 16 MB of external flash memory can be connected easily, the presence of 12 or 16 KB of RAM on the chip means that this is not an example which contradicts the judge's observation at [80].
(d) A Hitachi H8S microprocessor which was embedded into a CD player for emergency rooms (a project referred to as "Hi-fi for prems" in which Dr Greaves had been involved) and which, according to Dr Greaves, was "sometimes called a microcontroller" despite it not having on-chip RAM or ROM. We were not shown any data sheet or other document for this example. Dr Greaves said it would not be called a microcontroller by what he called "the standard meaning of the term".
(e) An H8 16-bit microcontroller. This device is mentioned in an article in a publication called Analogue Dialogue dated 1994. The H8 microcontroller is a component part of a digital ASIC which in turn is a part of a chipset for a second generation GSM mobile phone. The judge referred to this device at [77], pointing out that Dr Greaves accepted that this was like the other ROMless microcontrollers which had been put to him. It was not clear to the judge that the microcontroller itself had no on-chip memory. It can hardly therefore contradict the judge's finding at [80].
(f) The microcontroller pictured in the ARM Developers Guide. This was dated 2004 and shows that there is no RAM or ROM on the chip. The ARM Developers Guide was an example of the use of the term microcontroller in Gemalto's sense, i.e. as a description of a system. The judge was aware of this example, as it formed part of Gemalto's infringement case, and dealt with it at [312]. He did not overlook it and it is not inconsistent with the point he was making at [80].
Microcontroller in the patent
"In my judgment the word microcontroller in the claims is being used to refer to the chip. In its normal sense, it means a single chip which contains a CPU and has memory and in all likelihood other functional elements such as I/O interfaces on the chip. The skilled addressee would expect the claim to cover a microcontroller which was within the extended version of the normal usage but that still requires memory on-chip. A chip with a CPU which has registers and cache on-chip but no other on-chip memory is not a microcontroller. The claim is not using the word microcontroller to mean a dedicated system. I reject Gemalto's construction."
"When you have a ROMless microcontroller, so called, you connect the external ROM on, then you lose all security because anybody with a little bit of laboratory skill can sense the values going along those wires and extract the secret keys out of the microcontroller which totally defeats the purpose of having a microcontroller in the smart card application scenario."
Issue 5: Is claim 3 disentitled to priority because it claims "a converter for post processing the compiled form into a minimized form" ?
"151. Section 5(2)(a) of the Patents Act 1977 provides that an invention is entitled to priority if it is supported by matter disclosed in the priority document. By section 130(7) of the Act, section 5 is to be interpreted as having the same effect as the corresponding provisions of Article 87(1) of the European Patent Convention. Article 87(1) says that priority may be derived from an earlier application in respect of the "same invention".
152. The requirement that the earlier application must be in respect of the same invention was explained by the enlarged Board of Appeal of the EPO in G02/98 Same Invention, [2001] OJ EPO 413; [2002] EPOR 167:
"The requirement for claiming priority of 'the same invention', referred to in Article 87(1) EPC, means that priority of a previous application in respect of a claim in a European patent application in accordance with Article 88 EPC is to be acknowledged only if the skilled person can derive the subject-matter of the claim directly and unambiguously, using common general knowledge, from the previous application as a whole."
153. The approach to be adopted was elaborated by this court in Unilin Beheer v Berry Floor [2004] EWCA (Civ)
1021; [2005] FSR 6 at [48]:
"48 The approach is not formulaic: priority is a question about technical disclosure, explicit or implicit. Is there enough in the priority document to give the skilled man essentially the same information as forms the subject of the claim and enables him to work the invention in accordance with that claim."
154. In Abbott Laboratories Ltd v Evysio Medical Devices plc [2008] EWHC 800 (Pat), I added this:
"228. So the important thing is not the consistory clause or the claims of the priority document but whether the disclosure as a whole is enabling and effectively gives the skilled person what is in the claim whose priority is in question. I would add that it must "give" it directly and unambiguously. It is not sufficient that it may be an obvious development of what is disclosed.
"I now need to decide whether the general idea of a converter for post processing the compiled form of an application in standard Java class file format into a minimized form suitable for interpretation by the interpreter is entitled to the priority of the priority document. The issue turns on a fine but important distinction. Does the priority document disclose the idea of compacting in general with the namespace map as an example, in which case priority follows, or does it disclose only the specific idea of using a namespace map to compact the application, in which case the generalisation has no priority?
"The skilled reader of this document is a person or team with skills in programming and software engineering including compilation and optimisation techniques. Those are the skills necessary to put the patent and for that matter the priority document into practice. This skilled person is very familiar, as a matter of common general knowledge, with the idea that there are ways of processing the code to change the size of a program. This aspect of the skilled reader's common general knowledge means that when they read the priority document, in my judgment they would understand the idea of the namespace map as a way of compacting the code but they would know there were other ways of doing it. The priority document does not simply teach that the namespace map could be used, it expressly draws attention to the fact that this is part of a general idea of achieving time and space efficiency. The teaching is explaining that space efficiency can be achieved by post processing the application program to allow the interpreter program to be smaller (section 2) and by post processing the application program to make that program smaller as well (section 3). A skilled team given the priority document who decided to reduce the size of the application for time and space efficiency using other techniques apart from the namespace map would not think they were doing anything different from the principles of general application the inventors of the priority document have taught. In my judgment the converter referred to in claim 1 is entitled to the priority of the priority document. The fact that the later patent specification includes express disclosures of other ways of reducing the size of the application does not mean that priority is lost."
i) The fact that the skilled person's common general knowledge includes ways of processing code to change the size of the application does not mean that the priority document discloses such ways of reducing the size of the application other than the use of the namespace map. Such ways may have been obvious to the skilled person, but that is not enough.ii) The judge was in any event wrong to say that the priority document is part of a general idea of achieving time and space efficiency. No general idea of achieving time and space efficiency by compacting the application was disclosed in the priority document. There was only a teaching of a specific method of post processing, namely the namespace map.
iii) The judge was wrong to say that the skilled person who used a different method of reducing the size of the application would not think that they were doing anything different. The judge's reason, that the priority document was teaching a method of general application, was wrong, as all that was taught was a specific method using a namespace map.
Conclusion
Lord Justice Vos
Lord Justice Laws