Abstract:
A method and system for personalizing a plurality of parts are disclosed. All of these parts have an identical part number and one or more programmable functions. The method comprises the steps of employing in a first product a first of said parts; and employing in a second product, a second of said parts. Prior to normal operation of the first product, a first code is set in the first part, and this first code causes the first part to provide a first programmable function during normal operation of the first product. Prior to normal operation of the second product, a second code is set in the second part, and this second code causes the second part to provide a second programmable function during normal operation of the second product. The said second programmable function is different from the first programmable function.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     This invention generally relates to personalization of computer parts. More specifically, the preferred embodiment of the invention relates to a manufacturing system in which parts composed of common hardware but having unique microcode and vital product data do not require unique part numbers. 
     2. Background Art 
     Manufacturers have sought to leverage common parts to help reduce overall business costs and improve Return on Investment (ROI). One strategy strives to maintain brand-unique features and functions and thus the revenue associated with each brand, while leveraging common parts. Servers today are designed using more common under-the-cover industry standard parts. Both server hardware and microcode are designed as common building blocks wherever possible. The individual characteristics and functions in each operating system are used to maintain brand-unique customer value and investment protection. The adoption of a common parts strategy is driven by the need to remain profitable in an increasingly competitive marketplace. As high-performance hardware components, memory, hard disk drives (HDDs) and even processors become more widely available from multiple sources, they enable our competitors to become lower cost producers. The lower costs and business model efficiency gained through a common parts strategy provide a significant competitive advantage and therefore may not be simply a good idea, but a business imperative in the face of lower-cost industry-standard parts and reduced profit margins. 
     Over time, the computer industry has continued to use more common hardware in an effort to drive down development expense and other costs. Nevertheless, different companies and individual brands seek to provide product differentiation and unique functionality to attract customers and offer added value of competitors. These unique functions are increasingly implemented with brand unique microcode and Vital Product Data (VPD). When this unique code is implemented in brand unique models and featureable hardware, it can be enabled and utilized by the brand unique operating systems and applications to provide enhanced functionality and unique capabilities not available on other platforms. This facilitates brands to utilize more off-the-shelf common hardware yet still provide brand unique value-add functionality, which can allow them to command higher prices for similar features. 
     Vital Product Data (VPD) is information stored in nonvolatile storage in a computer, in a subsystem in a computer, or in a device in a computer that describe the element on which it resides. VPD can include common data such as part number, manufacturer, serial number, and features as well as unique company-defined and user defined data and functions. VPD is normally accessible by the computer in which the devices reside or by a network an external device. 
     Unique microcode and VPD can be loaded into common hardware by a part supplier in their manufacturing process to personalize the part, enable or disable functions and to assign a unique part number to these common parts event though the underlying hardware is exactly the same. This can result in dozens of part numbers associated with a common piece of hardware, all of which have to be ordered and stocked in manufacturing, increasing end-to-end costs such as inventory, scrap, and stocking of field spare parts. Additionally, it is common to have different levels of VPD and microcode co-exist simultaneous as a result of engineering changes. This again adds to the total number of unique parts that needs to be controlled and managed even though the underlying hardware is exactly the same. Changing the unique microcode and VPD may requires physically shipping the part back to the supplier and having the supplier rewrite the microcode and VPD, restamp a new PN and ship the part back to the server manufacturer for use in the systems they provide. This results in long delays and can mean missing product ship date and impact quarterly revenue especially during peak volume periods. There is normally added cost from the supplier to re-personalize and change parts for the box manufacturer. 
     Large manufacturing operations can have tens of thousands of unique part numbers (PNs) to manage. It is often difficult if not impossible even with the state-of-the art logistic systems to quickly identify parts that have common hardware yet different microcode and VPD. It is not uncommon for manufacturing operations to have parts constrained during peak period. Parts shortages can result even though they may have sufficient supply on hand of a part composed of the exact same hardware, but with unique microcode and VPD. A system allowing the rapid identification and re-personalization of common hardware through rewriting of unique microcode and VPD would significantly reduce peak demand parts shortages. 
     SUMMARY OF THE INVENTION 
     An object of this invention is to provide an improved method and system for personalizing computer parts. 
     Another object of the invention is to allow the rapid identification and re-personalization of common computer hardware parts. 
     A further object of the present invention is to provide a manufacturing system in which parts composed of common hardware but having unique microcode and vital product data do not require unique part numbers. 
     These and other objectives are attained with a method and system for personalizing a plurality of parts, all of said parts having an identical part number and one or more programmable functions. The method comprises the steps of employing in a first product, a first of said parts; and employing in a second product, a second of said parts. Prior to normal operation of the first product, a first code is set in the first part, said first code causing said first part to provide a first programmable function during normal operation of the first product. Prior to normal operation of the second product, a second code is set in the second part, said second code causing the second part to provide a second programmable function during normal operation of the second product. The said second programmable function is different from the first programmable function. With a preferred embodiment, the first and second products are different computer servers and the parts are memory cards. 
     In the preferred embodiment, this invention alters the manufacturing system so that parts composed of common hardware but having unique microcode and VPD do not require unique Part Numbers. The invention minimizes the unique parts, those with a unique part numbers, which need to be managed as separate distinct entities and thus have additional overhead expenses associated with them such as inventory costs, engineering change control, scrap, field spares for replacement parts and other end-to-end costs associated with each individual unique part added to the system. 
     In the preferred embodiment of the invention, a single common part number is used. Each part may be personalized by the system in which it is installed for that system by loading a system unique microcode or VPD image. However, this innovative system does not require that a unique PN be stamped on the personalized part and thus it greatly simplifies the management process and helps reduce stocking costs, delays, and re-personalization work within manufacturing. In-system re-personalization of parts by the box manufacturer means the re-personalization is dynamic and the parts do not need to be sent back to the supplier. Field spares represent a significantly lower volume of parts compared with what is used in new system manufacture, and thus those parts are handled via system unique personalized parts to prevent the unauthorized purchase of lower cost common hardware and then activating additional functions only available at a higher price. The in-system personalization function is disabled once the system ships to a customer to prevent low priced common parts from being purchased and then re-personalized in the field to be used as higher function, higher priced parts. 
     Further benefits and advantages of this invention will become apparent from a consideration of the following detailed description, given with reference to the accompanying drawings, which specify and show preferred embodiments of the invention. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  illustrates an in-system personalization method embodying the present invention. 
         FIG. 2  shows how a replacement part may be obtained in accordance with the present invention. 
         FIG. 3  shows one manifestation of in-system personalization in a manufacturing test cell. 
         FIG. 4  is a flow chart of an in-system personalization process. 
         FIG. 5  is a flow chart of an in-system personalization repair/upgrade process. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In accordance with the preferred embodiment of the present invention, in-system memory personalization in manufacturing is accomplished using common, or “vanilla,” root Dual In-line Memory Modules (DIMM) and memory part numbers (PNs) ordered from the supplier. In  FIG. 1 , a vanilla root DIMM PN  102  (e.g. PN XXXXXXX) is ordered from the supplier. Only this root DIMM PN is stocked in manufacturing. There may be some minimum amount of Vital Product Data (VPD) on the root PN to identify it to the server as a part that is personalizable in this particular system. The servers, represented at  104 ,  106 ,  108 ,  110  and  112 , are designed so VPD is written to DIMMs during manufacturing process, as represented at  120 . The DIMMs are personalized with Field Replaceable Unit (FRU) PN characteristics during manufacture. The DIMMs in the servers, represented at  124 ,  126 ,  128 ,  130  and  132 , shipped new from manufacturing retain the Root PN Label. The Root DIMM personalization can only occur via suitable personalization code in manufacturing. 
     In  FIG. 2 , it can be seen that Customer Engineers (CE) in the field, requiring a replacement part to repair a server, will order only pre-personalized FRU PNs for a DIMM repair scenario. Field Replaceable Units (FRUs) are the devices or subsystems that get replaced to repair a computer. In particular,  FIG. 2  shows a group of servers at  140 , each of which has a personalize DIMM, and these servers are shown at  142  after the personalized DIMMs have been replaced or upgraded. The root DIMM PNs cannot be ordered directly from the supplier. A CE or customer pulls out the defective DIMM and finds the root PN Label. They contact the manufacturer, providing the root PN and the system for which it is installed. The manufacturer in turn sends a pre-personalized FRU DIMM PN as replacement. The manufacturer at the appropriate price point and functionality enabled personalizes the part for that system. Unpersonalized root DIMMs installed in systems in the field will not work. The personalization function where it could be specialized code or hardware internal to the computer or an external device that is not available outside of authorized Manufacturers. Root DIMMs personalized for a different system will not work if installed in the wrong system. Root DIMM personalization can only occur via suitable code in manufacturing. Only FRU DIMM PNs are used for MES order that part for the upgrade. The root DIMM PNs cannot be ordered directly from the manufacturer. The CE or Customer contacts the manufacturer to request MES memory upgrade. Again, the manufacturer in turn sends a pre-personalized FRU DIMM PN as replacement. The manufacturer at the appropriate price point and functionality enabled personalizes the part for that system. Unpersonalized root DIMMs installed in systems in the field will not work. Root DIMMs personalized for a different system will not work. Root DIMM personalization can only occur via suitable code in manufacturing. 
       FIG. 3  shows one manifestation of In-System personalization in a manufacturing test call. In many manufacturing facilities, the hardware hooks already exist to write VPD. In manufacturing, asset protection is turned off. During initial boot, the service processor  150  auto-personalizes DIMM  152  VPD for the Server in which it is installed. DIMMs preferably come from the supplier already personalized for the highest volume product. The personalization code recognizes if the VPD is already personalized for this server type and skips this step. The service processor  150  gets the VPD image for this server from a master file  154  on a network  156 . Each DIMM is personalized quickly, normally less than a minute (in parallel with other initialization). The DIMM PN Label does not change to match personalization DIMMs. The DIMM PN in the VPD does not change to match personalized DIMMs. Asset Protection will use the feature number, not the PN. Asset Protection is turned back on after the In-System Auto-personalization completes. DIMMs can be taken out of this system and auto-personalized in different servers. There is no change needed for current Field Spares &amp; MES Upgrades PNs handling. As represented at  160 , Field Spares and MES upgrades can be personalized at a personalization station  162 , which can obtain the appropriate VPD image from master file  154 . The service processor personalization code is disabled before the server ships to the customer. The process is extendable to other FRU types (e.g., hard disk drives, adapter cards, planar boards, etc.). 
     A Service Processor is a separate computer processor, distinct from the main computational computer processor(s) used to by the computer customer applications and operating system, that provides maintenance and service functions for the system. The service processor may be external to the computer or imbedded within the computer. Service processors are at times implemented via multiple tier processors that interconnect to and communicate with each other where some are internal imbedded processors and other are external. Also, asset protection is a function that ensure only valid parts are used in a computer. If an invalid part is discovered, the system will be prevented from operating. 
     In-system personalization by the box manufacturer allows a large number of unique parts to be controlled and managed as a single part number. This significantly reduces overhead and end-to-end costs. The inventory of these common, vanilla parts being stocked is not dependent on the accuracy of a volume forecast for a single feature or machine type, but on the composite forecast of all features and machine types in which it is used. This significantly increases inventory turns, which decreases the total parts that need to be stocked, decreasing inventory expense and freeing capital. This also tends to make it much easier to fulfill orders, especially in end of month and end of quarter peak demand periods since inaccuracies in volume forecasts for specific machine types and feature forecasts tend to balance out across the various products. Some order quantities come in higher and some come in lower, so the aggregate demand tends to be much closer to forecast. 
     In-system personalization will also reduce scrap when a feature or machine type is discontinued since the common base hardware may be re-personalized and used in other machines. 
     In-system personalization Vs having individual suppliers personalize parts also increase the opportunity for parts reuse in (Equivalent To New) ETN and (Certified Spare Part) CSP programs where parts are returned from the field and reused in new machine or for replacement parts. 
       FIG. 4  and  FIG. 5  provide flow charts of in-system personalization and the repair/MES upgrade process. 
     With particular reference to  FIG. 4 , at step  202 , a common vanilla root part number is installed on a server system; and at step  204 , the asset protection code in the server system is disabled. At step  206 , the server system is powered up; and at step  210 , the server system detects the DIMM or memory hardware and determines whether personalization is required. If personalization is required, the server system, at step  212 , retrieves the latest microcode and VPD images for this part and installs them in the part. Then, at step  214 , the asset protection code in the server system is enabled; and at step  216 , the in-system personalization code on the server system is disabled. At step  220 , the server system is shipped to the customer. 
     With the upgrade and repairs procedure illustrated in  FIG. 5 , at step  222 , the manufacturer is contacted and given the server system type and the memory part number or feature required for the upgrade or repair. At step  224 , the manufacturer sends a pre-personalized part to the customer engineer or customer; and at step  226 , this part is installed on the server system. At step  230 , the server system then determines whether the VPD on the installed part is the VPD required for the server system. 
     If the VPD on the installed part does not match what is required, then at step  232 , the server system is prevented from operating with this new part number; and at step  234 , a message is provided indicating that the wrong part number was installed. The procedure then returns to the start and continues on from there. 
     If at step  230 , the server system determines that the VPD on the installed part matches what is required for the server system, then at step  236 , the upgrade or repair is completed. After this the procedure ends. 
     As will be readily apparent to those skilled in the art, the present invention, or aspects of the invention, can be realized in hardware, software, or a combination of hardware and software. Any kind of computer/server system(s)—or other apparatus adapted for carrying out the methods described herein—is suited. A typical combination of hardware and software could be a general-purpose computer system with a computer program that, when loaded and executed, carries out the respective method described herein. Alternatively, a specific use computer, containing specialized hardware for carrying out one or more of the functional tasks of the invention, could be utilized. 
     The present invention, or aspects of the invention, can also be embodied in a computer program product, which comprises all the respective features enabling the implementation of the methods described herein, and which—when loaded in a computer system—is able to carry out these methods. Computer program, software program, program, or software, in the present context mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form. 
     While it is apparent that the invention herein disclosed is well calculated to fulfill the objects stated above, it will be appreciated that numerous modifications and embodiments may be devised by those skilled in the art, and it is intended that the appended claims cover all such modifications and embodiments as fall within the true spirit and scope of the present invention.