British
and Irish Legal Information Institute
Freely Available British and Irish Public Legal Information
[
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:
[2014] EWCA Civ 1335,
[2015] RPC 17
[
New search]
[
Printable PDF version]
[
Help]
|
|
Neutral Citation Number: [2014] EWCA Civ 1335 |
|
|
Case No: A3/2013/2293 A3/2013/2298 |
IN THE COURT OF APPEAL (CIVIL DIVISION)
ON APPEAL FROM THE HIGH COURT OF JUSTICE
CHANCERY DIVISION
PATENTS COURT
MR JUSTICE BIRSS
[2013] EWHC 1876 (Pat)
|
|
Royal Courts of Justice Strand, London, WC2A 2LL |
|
|
22/10/2014 |
B e f o r e :
LORD JUSTICE LAWS
LORD JUSTICE FLOYD
and
LORD JUSTICE VOS
____________________
Between:
|
HTC CORPORATION |
Claimant/ Respondent |
|
- and - |
|
|
GEMALTO S.A. |
Defendant/ Appellant |
____________________
James Mellor QC and Miles Copeland (instructed by King & Wood Mallesons LLP) for the Appellant
Michael Tappin QC and Ben Longstaff (instructed by Powell Gilbert LLP) for the Respondent
Hearing dates: 15-17 July 2014
____________________
HTML VERSION OF JUDGMENT
____________________
Crown Copyright ©
Lord Justice Floyd:
- This is an appeal from the decision of Birss J dated 10 July 2013 in a patent action. Before the judge there were two patents in suit, EP (UK) 0 932 865 ("the 865 patent" or "865") and EP (UK) 0 829 062 ("9062"), owned by Gemalto S.A. ("Gemalto") and Gemalto NV respectively. These patents were said to be infringed by a variety of smart phones (and one tablet computer) ("the HTC devices") marketed in the UK by HTC Corporation ("HTC"). HTC commenced a pre-emptive action for revocation, and Gemalto and Gemalto NV counterclaimed for infringement. Birss J concluded that 865 was not infringed by any of the HTC devices and that only claim 3 and certain claims dependent on it survived the attack on validity. 9062 was wholly invalid.
- With the permission of the judge, Gemalto appeals from his decision that claim 3 of 865 was not infringed by the HTC devices. The principal issue raised by Gemalto's appeal is the correct construction of claim 1 (on which claim 3 is dependent). Gemalto contends that the judge adopted too narrow a construction. Gemalto accepts that the judge was right to hold all the claims of 865 which are not dependent on claim 3 invalid. HTC, by a respondent's notice, contends that the correct construction is even narrower than that adopted by the judge. Also with the permission of the judge, HTC appeals from the judge's decision that claim 3 of 865 was valid. Some of HTC's grounds of invalidity are dependent on the court adopting the judge's construction or Gemalto's wider one: others are free-standing. There is no appeal against the finding of invalidity of 9062, and I need say no more about that patent.
- On the appeal James Mellor QC (with Miles Copeland) argued the case for Gemalto and Michael Tappin QC (with Ben Longstaff) argued the case for HTC.
Technical background
- The action is concerned with computers and their programming. The judge introduced some of the more general technical background at [7] to [24] of his judgment in terms which neither side criticises. He also set out and made findings about the relevant common general knowledge which the skilled team would bring to their reading of 865 at [38] to [50] of the judgement. What follows borrows heavily, and gratefully, on those sections of the judgment which are material for this appeal.
- The basic elements of a computer are well known: a central processing unit (CPU), memory of different kinds and input/output machinery to communicate externally. Computers are implemented on silicon chips. A chip which carries a CPU is called a microprocessor chip. The chip may also carry memory and input/output devices on the same piece of silicon.
- Computer memory may be random access ("RAM") or read only ("ROM"). RAM is used to store immediate results and can be accessed relatively quickly. It is volatile, and so its contents will be lost when the power is switched off. ROM is used to store programs or data. It is non-volatile. There are variants on ROM, such as PROM (programmable ROM), EEPROM (electrically erasable programmable ROM) and so on.
- In addition to these forms of memory, computers have registers. These are slots within the CPU itself which provide very fast temporary storage for values which are actually being processed. As the judge held at [9], they are really part of the CPU itself.
- In addition to RAM, ROM and registers, there is cache memory. Cache memory is used to house a temporary copy of data to be found elsewhere in memory to provide fast and ready access to it while it is being worked on. It is used to speed up processing. The data in cache is never unique because it is a copy of data to be found elsewhere in the system.
- A distinction which was at one stage important was between general purpose computers and dedicated or embedded systems. An example of a general purpose computer is the, now ubiquitous, laptop or desktop personal computer. A dedicated or embedded system might be found in a washing machine, specially designed for controlling the machine's cycles, but capable of nothing else. Both contain chips, but the dedicated system is more likely to have all its functional elements on the chip, whilst the general purpose computer will usually have a processor chip and separate memory chips.
- Computers ultimately execute programs in machine code. Programmers do not however write machine code, but write their programs in "higher level" languages. Above machine code one can have an assembly language specific to the processor on which the program is to be run. Assembly code is then translated into machine code by a device called an assembler. Above assembly language one can have higher level languages such as BASIC and Java. These programs can embody more abstract concepts than assembly languages. In order to convert these high level languages into machine code one may use either a compiler or an interpreter, the essential difference being that the compiler converts the entire program to machine code, whilst the interpreter interprets the high level language at run time.
- A virtual machine is a program which runs on a real computer which is designed to mimic a particular computer architecture.
- The high level programming language Java existed as a package consisting of a number of components. Once code was written in Java it was compiled by a Java compiler into a form of code called byte code. The computer files which made up the program in byte code were called Java Class files. Byte code formed the code for a virtual machine called a Java virtual machine or JVM. As long as a computer of any kind had a JVM installed on it, that computer could run programs written in Java. This was of importance because it allowed programs written in Java to be made available on the internet from a website and be run on any computer with a JVM.
- The JVM had a number of components, the details of which do not matter. The judge found that the skilled person would be aware that the JVM was a comparatively large piece of software.
The 865 patent
- 865 is entitled "Using a High Level Programming Language with a Microcontroller". It was filed on 22 October 1997 and claimed convention priority from an earlier United States application filed on 25 October 1996. The invention is said to relate to using a high level programming language with a smartcard or a microcontroller.
- The specification of 865 explains at [0003] that software applications written in the Java high-level programming language have been so designed that they can run on many different computers without change. It explains at [0005] that, in order to run on a specific platform, a JVM must be written that will run within the constraints of the system, and a mechanism must be provided for loading the desired Java application on the platform, again keeping within the constraints of the system. Thus, as explained at [0006], conventional platforms which support Java are typically microprocessor-based computers with access to relatively large amounts of memory and hard disk storage space, such as desktop and personal computers. There were, however, no conventional Java implementations on microcontrollers, as would typically be used on a smart card.
- At [0007] to [0008] the specification explains that microcontrollers differ from microprocessors in many ways. Thus a microprocessor typically requires certain external components (memory, I/O controls) to function properly. A typical microprocessor can access from a megabyte to a gigabyte of memory, and is capable of processing 16, 32 or 64 bits of information with a single instruction. By contrast, a microcontroller includes a CPU, memory and other functional elements "all on a single semiconductor substrate, or integrated circuit (e.g. a chip)". The specification goes on:
"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 [0009] it is explained that a microprocessor typically has relatively little ROM and EEPROM and has 1 to 128 megabytes of RAM "since it is not constrained by what will fit on a single integrated circuit device". However a microcontroller typically has a small RAM of 0.1 to 2.0 kilobytes, EEPROM of 2 to 8 kilobytes and ROM of 8 to 56 kilobytes. In [0010] it is said that "due to the small number of external components required and their small size, microcontrollers frequently are used in integrated circuits, such as smart cards." At [0011] the specification explains that, "because of the constrained environment", applications for smart cards are typically written in a low level language (e.g. assembly language) to conserve memory.
- In [0012] there is reference to a French patent application which is said not to "address data security concerns, describe how to prevent unauthorised access of the data and information on the smart card, nor how to provide a programming environment that would enable a programmer to create a program for a smart card on a rich programming language such as JAVA and yet execute the program using an interpreter on the smart card that operates within the execution constraints of the smart card."
- At [0013] to [0018] the specification contains a long section concerned with the security of integrated circuit cards. It explains, amongst other things, that the use of low level programming languages can lead to unauthorised access to data on the card.
- There is a reference in the "Summary of Invention" section of the 865 specification at [0020] to "embedded systems using microcontrollers". At [0021], in referring to optional features, it is stated that "The processor may be a microcontroller" and "At least a portion of the memory may be located in the processor".
- At [0031] it says:
"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."
- At [0039] it is stated:
"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
- Claims 1 and 3 are in the following form, stripped of their reference numerals. As claim 15 features in the arguments, I also set that out.
- Claim 1
"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
- The issues which necessarily arise for decision are the following:
- Issue 1: What is the proper construction of "a microcontroller having a set of resource constraints and comprising a memory"?
- Issue 2: Do the HTC devices contain "a microcontroller having a set of resource constraints and comprising a memory"?
- Issue 3: What is the proper construction of "an interpreter loaded in memory and operating within the set of resource constraints" and "at least one application loaded in memory to be interpreted"?
- Issue 4: Do the HTC devices have "an interpreter loaded in memory and operating within the set of resource constraints" and "at least one application loaded in the memory to be interpreted"?
- Issue 5: Is claim 3 disentitled to priority because it claims "a converter for post processing the compiled form into a minimized form"?
- Further issues may arise depending on the outcome of those issues.
Issue 1: What is the proper construction of "a microcontroller having a set of resource constraints and comprising a memory" ?
- The parties were agreed on the proper approach to the construction of a patent specification and its claims. The principles can be found in the speech of Lord Hoffmann in Kirin Amgen v Hoechst Marion Roussel [2004] UKHL 46; [2005] RPC The objective is to discover what the skilled person would understand the patentee to have used the language of the claim to mean.
- The judge summarised the parties' contentions in the following way:
"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)
- The two rival constructions in play were therefore HTC's (requiring all memory to be on-chip) and Gemalto's (where some or all of the memory can be elsewhere). On this appeal Gemalto has abandoned its suggestion that the claim is directed to embedded or dedicated systems. In what Mr Mellor described as a refined argument, the microcontroller called for by the claim was any functional unit, of the kind typically used in embedded or dedicated systems. The consequence of this refined approach is that various points touched on but not decided by the judge, and revisited in HTC's respondent's notice, as to whether the HTC devices could be described as embedded or dedicated systems, no longer arise.
Microcontroller outside the patent
- The judge approached the issue, as the parties had, by considering first what the expression meant to the skilled addressee without reading the patent. The term was not an expression used in ordinary English outside the computer field and expert evidence was therefore admissible to determine its meaning. The judge recognised that this was not the end of the question, however, because, in the patent, "it may be that the skilled reader would understand the expression as having been used in its familiar sense or one of its familiar senses or perhaps in a different sense altogether." It was therefore vital to consider how the skilled addressee would understand that the term is being used in the patent.
- The judge's conclusions on the first stage of his enquiry are set out at [64] to [82] of his judgment. I would summarise his more important findings as follows:
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.
- In paragraph 80 of the judgment the judge said this:
"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."
- Gemalto's criticism of the judge's analysis in his first stage was that he focused on "the chip", whereas the practical person would focus on "working systems". Gemalto also contends that the judge embarked on what it describes, apparently pejoratively, as a meticulous analysis in a search for a precise definition of the term microcontroller. In so doing it is said that he lost sight of the fact that it was "an umbrella term which covered the prevalent "single chip microcontroller", but also the full spectrum of what was used in embedded and dedicated systems including ROMless microcontrollers ... and microcontrollers which accessed off-chip memory as the application demanded. "
- A major plank of Gemalto's attack on the judge's analysis was that the judge was wrong to conclude at [80] that there were no examples in evidence of a microcontroller chip with no on-chip memory (ignoring registers). Gemalto relies on several examples which it contends illustrate such usage but which it is said that the judge overlooked. I will take these in turn, but I should point out at the outset that these examples were not relied on by Gemalto's expert Professor Paradinas. They were put to Dr Greaves in cross-examination after Professor Paradinas had given evidence. I have already noted that the judge concluded that Professor Paradinas had himself not gone so far as to suggest that something could be a microcontroller and yet have neither RAM nor non-volatile memory on chip. In consequence the only evidence of their significance is that which Dr Greaves gave when asked about them.
- Gemalto relied on the following examples to support their argument that the judge had overlooked important evidence of usage:
(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].
- I do not think that Gemalto's criticism of what the judge said in [80] of his judgment has any substance. Firstly, in [80] the judge is considering the use of the term microcontroller to refer to a chip. Thus [80] of the judgment should not be read as saying that there were no examples of usage of the term "microcontroller" to refer to a system which included a chip with no memory on it. The judge was saying that, in those cases where the term microcontroller is used in the sense of a chip, the chip always has memory on it. Moreover none of Gemalto's examples were of a case where the term microcontroller was used in what the judge called the normal or extended sense and where it was clearly established that there was no memory on chip at all.
- Gemalto also submits that the judge focused unduly on "the chip", and carried this focus forward when considering the meaning in the patent. The judge concluded that there was no fixed meaning in the art, but that its normal meaning in 1996 was to refer to a chip.
- It has to be recalled that the enquiry on which the judge was engaged at this stage was essentially aimed at establishing the ways in which the technical term was used in the art. The judge was better placed than this court to conduct this exercise. Having rejected Dr Greaves' position that the term has a precise, accepted meaning in the art, the value of the exercise became more questionable. However, unless it is clear that the judge ignored relevant evidence or took irrelevant evidence into account, or was plainly wrong, we should not interfere with his conclusions. I am unable to fault his conclusion that the term was used in the art in various ways, of which the normal or prevalent way was to refer to a chip.
Microcontroller in the patent
- The judge first dealt with two arguments based on what was described as the patentee's purpose as determined from the patent. The first of these was that the skilled person would see that the inventor's purpose was to fit the relatively large Java virtual machine onto the small memory on the chip. HTC submitted that this supported its construction, because the patentee would not have wished to claim more broadly and thus encompass systems where the constraints of a chip did not exist. The judge was not impressed by this argument: he considered that although a patentee might often describe his invention in terms of the problem he considered he had solved, the claim might legitimately generalise his solution. Viewing the patent as a whole he thought that purpose was a neutral consideration.
- The second argument based on purpose referred to the discussion of security in the patent. The judge rejected the argument that this would lead the skilled person to conclude that all the memory was on chip. He considered that the passages in the specification were not telling the skilled person of an advantage of everything covered by the claim, merely of something so covered.
- The judge next reviewed the specification to see how it used the term"microcontroller". He concluded that the usage of language in the specification strongly favoured HTC. There were clear examples of HTC's usage, some neutral passages and none which clearly supported Gemalto.
- The judge's conclusion on this aspect was set out in [102] of his judgment:
"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."
- The judge therefore adopted neither HTC's nor Gemalto's construction. On the judge's construction there had to be some memory on the chip, although there could be more elsewhere.
- Apart from his point that the judge carried forward an undue emphasis or focus on chips in his approach to the patent, Mr Mellor submitted that there were three main reasons - he called them "big points" - why the judge erred in giving the term microcontroller in the patent a construction which did not allow all the memory (except registers and cache) to be off chip.
- Mr Mellor's first point was based on claim 24 of the patent. This lays claim to a microcontroller of the earlier claims where the memory includes less than 1 megabyte of storage. He draws attention to the fact that at [0007] of the specification it is said that typical microprocessors access from a megabyte to a gigabyte of memory. Mr Mellor submitted that this told the skilled reader that the patent was not concerned with the location of memory, only with its size. It would immediately put the skilled reader in mind of ROMless microcontrollers, as these would be the only microcontrollers which could access 1 MB of memory. The qualification in claim 24 meant that earlier claims covered more than 1MB of memory.
- This was a point which was not argued before the judge. Indeed, until it was ventilated orally before us, it did not feature in any skeleton argument of Gemalto. If it were a pure question of argument, then that might not matter. However the factual propositions on which it is based were not to put to any witness. We are not in a position to say whether or not, in 1996, it was realistic to contemplate on-chip memory exceeding one megabyte. If it was realistic, then the reference in claim 24 to a memory of 1 megabyte would be seen by the skilled person as, at best, neutral in resolving the issue of construction. It would, as Mr Tappin contends, be seen as an attempt to place the widest possible numerical limit on the size of the memory in the light of the rate at which memory capacity could be predicted to expand over time, without giving any indication, one way or the other, as to the location of the memory. In those circumstances it would not be right, in my judgment, to give this belatedly noticed point any weight.
- Even if Gemalto had established the necessary factual basis for this first point, I do not think it has any impact on the judge's construction, which expressly allows for off-chip memory. The point does not contradict the judge's conclusion that there must be at least some on-chip memory (apart from registers and cache) to come within the term microcontroller as it is used in the patent.
- Gemalto's second point was based on a detailed analysis of the passage of the specification headed "Summary of the Invention" which extends from [0019] to [0043]. Mr Mellor drew attention to the fact that, of the dozen or so "aspects" of the invention described in these paragraphs, two, namely those at [0031] and [0039], do not mention an integrated circuit card or smart card. These are also the two aspects which call for a microcontroller. I have set these paragraphs out above. Mr Mellor submits that whilst [0031] makes it abundantly clear that the microcontroller being spoken of is on a substrate such as a chip, with memory located on the chip, [0039] is not so explicit.
- I do not think this point has any substance. Earlier passages in the specification, including paragraphs [0007] to [0009] have made it clear to the skilled reader that the microcontroller is a chip, with memory located on the chip. The skilled reader would be familiar with that usage of the term, as it was the prevalent usage. [0039] has to be read in the context of the specification and bearing in mind the known usage. In those circumstances the skilled reader would find it unremarkable that, in this particular instance the patentee had not drawn attention to the requirement for a chip with memory located on the chip. I accept Mr Tappin's submission that this second point is over-analytical.
- Gemalto's third point concerns paragraphs [0007] to [0009] of the specification. Plainly these paragraphs lend powerful support to HTC's and/or the judge's construction as they explain that, whilst a microprocessor can access very large amounts of memory, a microcontroller includes memory on a single semiconductor substrate and can access relatively small amounts of built in memory, constrained by the amount of space available for each type of memory on the substrate.
- Mr Mellor seeks to neutralise the impact of these paragraphs by reminding us that they follow on from more general statements, at [0003] and [0005], which explain that in order for a Java application to run on a specific platform, a Java virtual machine must be written that will run within the constraints of that platform. He submits that a microcontroller in which all the memory is on chip, thus represents an extreme example of a constrained platform. This is what is explained at [0007] to [0009]. However, the skilled reader would not take these passages as defining what was meant by a microcontroller. The skilled reader would understand that the invention would also be useful in relation to different platforms, such as a platform which could access external memory, but where the memory was nevertheless constrained in some way. He or she would, he submitted, understand that the patentee was, in these paragraphs, merely explaining how, historically, the invention had been arrived at. He further submitted that the paragraphs were not intended to confine the meaning of the term microcontroller and that HTC and the judge were wrong to treat these paragraphs as limiting the meaning of the term in the claims.
- I cannot accept these submissions. Although paragraphs [0007] to [0009] occur in the section of the specification entitled "Background to the Invention", that section is not drawn, to my mind, as a historical account of the way in which the inventors arrived at the invention. Paragraphs [0007] to [0009] would be read as part of the patentee's explanation of the invention as a whole. The paragraphs explain both what a microcontroller is and how it is constrained. Thus a microcontroller has a central processing unit and memory all on a single semiconductor substrate and the memory is limited by the amount of space available on the substrate. Whilst I accept that a microcontroller, using the term in the patentee's sense, is an example of a constrained platform, the term used in the claim is "microcontroller" and not "constrained platform". I cannot detect, either here or elsewhere in the specification, any basis for giving the term a wider meaning in the claims than it bears in these important introductory paragraphs.
- Mr Mellor submitted that it was important to bear in mind that the term used in claim I was "a microcontroller having a set of resource constraints and comprising a memory...". If HTC or the judge were correct on this point of construction, then, so he submitted, the added words were surplusage. This is at best a rather legalistic point which I doubt would weigh heavily with the technical reader. Even so, I do not accept that it is correct. The words in question provide an antecedent for their subsequent use in the claim, thus making it clear that the memory and resource constraints being referred to were the memory and resource constraints of the microcontroller. Moreover the point is not helpful in resolving the issue between the parties, because the words do not serve any clear purpose on Gemalto's construction either. Gemalto accept that the resource constraints must necessarily include a constraint on memory. But on Gemalto's construction there is no real constraint on memory because the microcontroller is permitted to access as much off-chip memory as the designer wishes. The words would merely state the self-evident truth that the microcontroller is constrained by whatever resources it has access to.
- I therefore reject Gemalto's attack on the judge's reasoning. There remains the question of whether the judge was right to allow the term "microcontroller" the more extended meaning in which the microcontroller may have access to off-chip memory provided there is at least some on-chip.
- There are, in my judgment, three powerful reasons why HTC's narrower construction is the correct one.
- Firstly, as the judge correctly held, the language of the specification strongly supports HTC's construction. Given that the expression "microcontroller" was used in a variety of different ways in the art, it became particularly important to analyse the manner in which the term was used in the patent specification itself. If the skilled person were to ask himself or herself the question whether the patentee was using the term "microcontroller" to encompass a functional unit with effectively unconstrained access to memory, he would, I venture to suggest, answer with an uncompromising "no". There is nothing of substance in the specification to support, and much to contradict, this construction.
- Secondly, and in particular, I consider that the specification at [0008] is making clear the technical attributes which the patentee considers that a microcontroller possesses, including memory "constrained by the amount of space on the integrated circuit". Paragraph [0009] contrasts a microprocessor as not being "constrained by what will fit on a single integrated circuit device, and will often have access to an external disk memory system". The skilled person would take from this the clear message that, according to the patentee, a microcontroller does not have access to off-chip memory.
- Finally I consider that the long passages of the specification at [0013] to [0018] dealing with the security of systems provides support for the more restricted construction. The point being made is that if applications or data are on the chip opportunities for unauthorised access are restricted. This was a point addressed by both experts. Professor Paradinas accepted that the skilled person would be well aware of the security benefit of using a microcontroller as opposed to allowing access to off-chip memory. Dr Greaves said that one of the reasons why the patent in suit was "about a microcontroller" (in his sense, i.e. without access to off-chip memory) was that the external bus was not exposed. He explained:
"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."
- I can understand that it might be argued that minor variants on what the skilled person might understand to be a microcontroller in the patentee's sense might be included within the claims. It is not necessary, however, to explore that proposition any further because a variant in which the microcontroller has access to virtually unlimited external memory, as it would be on the judge's construction, cannot be characterised as a minor variant.
- Accordingly, I will approach the remainder of the appeal on the basis that HTC's construction was correct.
- It is common ground that if HTC is right on construction then there is no infringement of claim 3 by any of the HTC devices. Issue 2 therefore falls to be decided in favour of HTC. It follows that the appeal against the judge's conclusion of non-infringement must fail.
- Issues 3 and 4 were argued before us on the basis that Gemalto's construction was correct. It is not therefore necessary to say anything about those issues.
Issue 5: Is claim 3 disentitled to priority because it claims "a converter for post processing the compiled form into a minimized form" ?
- Not all of the points argued at the trial about the entitlement of claim 3 to priority still arise for decision, as they were contingent on the court adopting a construction wider than that which I consider to be correct. Issue 5 is, however a free-standing attack on the priority date of claim 3. It matters because it is common ground that the patent is invalid if claim 3 is not entitled to the claimed priority date.
- The principles on which the court approaches an issue of priority have been set out in a number of cases, most recently by Kitchin LJ in Medlmmune v Novartis Pharmaceuticals [2012] EWCA Civ 1234:
"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.
- The skilled person must be able to derive the subject matter of the claim directly and unambiguously from the disclosure of the priority document. Mr Tappin stressed that the question was one of what was disclosed to the skilled person, not what was made obvious to him by the priority document, for example in the light of his common general knowledge. I agree that, as the above passage shows, that is the correct approach. That does not mean, however, that the priority document should be read in a vacuum. The question of what a document discloses to a skilled person takes account of the knowledge and background of that person. A document may mean one thing to an equity lawyer and another to a computer engineer, because each has a different background. The document still only has one meaning because it is only the relevant skilled person's understanding which is relevant. What is not permissible is to go further than eliciting the explicit or implicit disclosure and take account of what a document might lead a skilled person to do or try, or what it might prompt him to think of.
- The job of the post-processing converter called for by this feature of claim 3 is to produce a minimised form of the application program. At page 5 the priority document explains that it is an object of the invention to compact an application by use of a pre-defined namespace map. Section 3 on page 7 of the priority document describes the process of "namespace mapping". It is common ground that namespace mapping has the effect of minimising the size of the application for time and space efficiency.
- The short point raised on this aspect of the appeal is whether this disclosure, which is tied to a particular method of compacting the application program, namely namespace mapping, is sufficient to support a claim of the breadth of claim 1, which is wide enough to encompass all compaction methods.
- The judge dealt with this issue at [184] to [185] of his judgment:
"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."
- HTC contends that there are three errors in the judge's analysis in these paragraphs:
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.
- On HTC's first point, I do not think it is right to suggest that the judge crossed the line between clear disclosure and obviousness. His reliance on the common general knowledge of the skilled team of other methods of compacting an application was not for the purpose of supplementing what was actually disclosed so as to include specific disclosures of those methods. He was explaining that, because the skilled team approach the priority document with their background knowledge of a wide variety of methods, they would understand that namespace mapping was being disclosed as an example of a suitable technique of compaction of the program. I accept Mr Mellor's submission that it is entirely appropriate to have in mind the skilled person's mental backdrop when deciding what he or she would understand from a priority document.
- Mr Tappin elaborated his second point by submitting that the judge wrongly derived a common theme of time and space efficiency by relying on passages of the priority document which were concerned with the interpreter and not the application program. I do not think this is a fair criticism of the judge. There is indeed a common theme of time and space efficiency, in that the priority document contains sections concerned with time and space efficiency in relation to both the interpreter and the application. Indeed, it should also be borne in mind that the teaching of the priority document as a whole is concerned with the resource constraints of a microcontroller. In deciding whether the skilled person would understand that anything turned on the precise method of compaction utilised in relation to the application program it was relevant to take into account this and other aspects of the context in which the relevant disclosure occurred.
- HTC's third point attacks the final sentence of [185] of the judgment. However if HTC is wrong, as I consider it is, on the first two points, then it would be right to say, as the judge held, that the skilled person would not think there was any difference if he used a different compaction method.
- HTC also advanced a further point, namely that the disclosure of the priority document was always in the context of a method which rendered the interpreter more efficient by re-ordering the byte codes. The patent had generalised the disclosure, and there was no reference to re-ordering the byte codes. I do not think there is anything in this point. Although the judge did not deal with it specifically, the disclosures in relation to compaction of the interpreter and the application program were clearly separate ways of achieving time and space efficiency. There was no additional disclosure by claiming the invention by reference to one and not the other.
- I conclude that claim 3 was not disentitled to priority on this ground.
Conclusion
- It follows that, for the reasons I have given, I would dismiss the appeal.
Lord Justice Vos
- I agree.
Lord Justice Laws
- I also agree.