While integrated circuit design has become, for many design problems, relatively well-understood and routine, boardlevel design is much less automated and more time-consuming. Board laycut is fully or partially automated, thanks to placement and routing systems. The higher levels of the design process-omponent selection, architectural design, software development-are still done manually. CASE systems are now Icing marked to aid the development of mixed hardwardsoftware systems, but CASE is not itself an answer. CASE inly automates analysis and bookkeeping functions, such as required changes or estimates of software running time; CASE tools do not make design decisions themselves. New synthesis methodologies and algorithms are required to brt Ik the board design bottleneck. Our research program at Princeton University concentrates on synthesi; algorithms for high-level board design tasks. Based on case studies of system designs made both within the university and in industry, we have chosen a skeleton-bared methodology for board specification and synthesis and are researching a variety of problems posed by this approach. A skeleton-based synthesis methodology assumes that a few key design decisions-major architectural choices and key component selections-are part of the board specification. The synthesis system's task is to complete the board design. based on a functional description of the board plus constraints on speed, size, power consumption, and interface behavior. A skeleton-based synthesis methodology is realistic and effective Many system designs in fact dictate a few key architectural decisions, because of throughput requirements. softwae compatibility requirements, availability of only a single part which performs at the desired speed, etc.. Software compilation technologies, which are much more mature, similarly require the designer to specify the structure of the software and concentrate on the lower-level optimizations. Freeing software designers from these lower-level optimizations has had great impact on the design of software. Similarly, we expect skeleton-based synthesis to have a large impact on system design.