| Product Design |
|
Beningo Engineering is among the few North-American companies offering cost-effective embedded product development solutions to clients across the globe. Our key differentiator is our turn-key services that starts from system architecture design, embedded hardware and software design, to validation, verification and manufacturing. With our high quality service and commitment, we help our clients to reduce time to market, reduce risk of new product development and reduce overall project costs. By leveraging our experience, we are able to produce cutting-edge, high quality products, on-time and on-budget. We offer a number of services for embedded system design which helps us in serving our clients through all the stages of their product development life-cycle. An all service included development cycle is considered to be a turn-key solution but we offer any of these services on an individual basis. This page is dedicated to providing an overview of our development cycle as well as a few brief examples. A detailed background of architectures and tools that we work with can be found in Platforms and Technologies under the Company menu and additional information about individual services can be found under the Services menu. For questions please feel free to contact us. Our development cycle consists of six primary stages of design:
Requirements and Features
One of the most critical and overlooked tasks of the product development cycle is the development of requirements. When our clients bring us an idea or a new product concept, one of the first things we do with them is to go through and further develop the system requirements. While this seems like common sense, it is one of the biggest hurdles to overcome to have a successful product. A product with minimal requirements will often experience feature creep. Feature creep is when features and technologies continue to be added to the requirements after detailed engineering has already occurred. This occurs in every project to one degree or another but properly managing the system requirements can be the difference between getting a product to market or a company going under. Adding features during a design cycle will often cause portions of the design to have to be redesigned which increases costs and delays getting the product to market. A product with the opposite problem of having too many requirements can potentially cause as many problems as an under specified product. In these types of projects the client will have usually done their homework to the point that they have created enough features to go into the product that it would take years to develop, test and get the product to market. In today’s 6 – 9 month design cycle timeframes this just won’t work. We resolve the potential problems that can arise from the start of the project by working with our clients on their requirements. If a system is under specified, we use our background and expertise to ask the critical questions to develop an enhanced requirements document which will make the product a success. When a client approaches us with an over-specified project, we work with them to create feature priorities and necessities in order to get them to market first with a quality product. We work with them to develop a product maintenance and upgrade plan to release enhancements to the product through software updates, add-on hardware modules, new product releases and other upgrade paths. Using these techniques we are able to guide our customer through the many pitfalls that can plague product development and provide them with a cost effective and robust solution to get their product to market while decreasing their overall costs. System Design and Architecture The hardware system diagram breaks the system into logical, functional blocks. The goal is to develop these blocks in such a way that when the time comes to begin the hardware design, the design team can assign these pieces to individual engineers in order to speed up the development process. These blocks also serve to identify internal and external bus interfaces and what physical layers will be used for the devices to interact with each other. When a high level diagram is developed, the design process moves one level down to begin to understand what components will meet the requirements of that block. At this point major components would be selected such as the microprocessor and we would begin working with our supply chain to find the appropriate components. The software system diagram breaks the system into logical function blocks as well. The goal for software is develop state diagrams and state charts that represent how the software transitions from one mode to another based on external and internal inputs. Some example modes would be moving from standby to operating or perhaps a sleep mode to run mode. Each application is unique enough that they warrant their own diagrams. However, we do have a number of generic diagrams for features such as power savings modes and fault detection that we leverage for our customers to decrease time to market. During the design of the system architecture we interact with our client to verify that the system is developing in the way that they expect. We work very closely with them during this stage to ensure that nothing is overlooked. Once the system architecture is completed and the client has approved, we begin the detailed hardware and software design.
Embedded Hardware and Software Design
One of the first tasks of this phase in the design cycle is to begin acquiring development kit and engineering samples of the primary components that were identified during the system architecture phase. The reason for this is that by getting the parts in house sooner rather than later allows us to begin experimenting and getting familiar with the parts. Through this early experimentation we are able to better understand how they operate and their capabilities so that we can verify that they meet our system requirements for the application. By doing this we can uncover potential road blocks before they occur. For example, if the hardware was designed first before giving considerations to the software, we may find that the processor we selected does not have enough MIPS or flash to handle the algorithms that are required. This would require a redesign of the board which would then require more time and additional costs or result in a decrease in the number of features offered. By piecing the major components together before we produce prototypes allows us to select the correct parts in addition to begin to test out our software model. Another great example is where we select a part that has too much power for the application. By experimenting before hand we can catch this problem and find another suitable part from that family that will result in a lower BOM cost. During this phase of hardware and software development, the system architectures that we developed serves as our design road map. The hardware team performs a deep dive into the electrical, mechanical, thermal and power components. Additional trade studies are conducted in order to identify all of the components. The block diagrams become the pieces used to develop the electrical schematics which after review and approval are used to perform component placement and PCB layout. Mechanical components, enclosures, buttons, CAD and thermal analysis are performed as well as many other engineering activities to ensure that the product is can be manufactured at an affordable price. During this phase the software team uses the development kits and sample component to begin constructing the system. This allows the software team to forge ahead in developing drivers, communication protocols and the application software while the electronic hardware is still in development. The hardware and software teams work together closely, providing feedback to each other which then influences the others design. The result is that by the time prototype hardware arrives, the system software is in a tested state which allows us to check out the boards more easily and identify any changes that may need to be made before production.
There are many activities which occur during this phase of the development cycle. A few examples of the embedded hardware services that are performed during this phase are:
A few examples of software development that occurs during this phase of development are:
Prototyping
The number of prototypes which are created can vary from two engineering units to roughly about 20. The number of prototypes built varies depending on customer and engineering needs. At this stage we will run our preliminary software build on the unit and the client will begin evaluating the product. The engineering staff will continue to tweak and make adjustments to the product and preparing it for official testing and validation phase. During the prototype stage, the prototype units will be put through preliminary testing. The purpose to pre-test is to ensure that during the testing and validation phase any issues or defects have been eliminated so that no additional changes or modification will be required in order to move into the manufacturing phase of the project. The units will be ran on the bench continuously in addition to monitored for thermal, mechanical and software defects. Every design project has minor issues with prototypes. It's the reason we don't go directly to manufacturing from the design phase. Beningo Engineering follows strict processes in order to ensure that any issues that do occur are minimal and have no impact on schedule or cost. Testing and Validation
During the testing an validation phase there are a number of tests that are performed. First, final product testing is performed in order to verify that the product meets the operational requirements and features that were developed with the customer. Second, as required we perform formal environment, mechanical and electrical testing on the unit. Examples of this testing would be thermal testing, shock and vibe, and any other industry specific testing. Finally, we perform product certification testing. Certification testing is government regulated. For example, standard testing that we perform are FCC, CE, EMI/EMC as well as a number of other tests. If you are interested in knowing all the testing that we are capable of performing, please contact us and we will work with you based on your requirements. During the testing and validation stage, we also develop test utilities and automated test tools for the manufacturing process. These tools can be functional testers, end of line testers, and many other testing setups which aid in manufacturing and validation of the product. Manufacturing
We have partnered with major PCB manufacturers and assembly houses to offer high quality PCBs and assembled products. We work with companies both in the United States and overseas in order to best meet our clients needs. Our solutions cater to the need of OEMs, system integrators, and high-tech device manufacturers that require a reliable, high quality supplier. Our manufacturing partners are certified in ISO 9001:2001, ISO 14001, TS 16949 and ISO 13485. They are leading electronic manufacturing solutions with over a decade of experience including a wide range of electronics assembly solutions. They offer solutions ranging from Printed Circuit Board Assembly (PCBA) and Flex Circuit to complete product assembly and Box Build. They utilize the latest technologies in manufacturing methodologies such as lead free soldering and selective wave soldering. In addition, they provide functional and in-circuit testing as well as static and dynamic burn in testing. |
Services
When the requirements gathering phase of the development cycle is completed, Beningo Engineering will design begin work on the system architecture. In order to successfully complete this phase of the design cycle there are a number of critical tasks which need to be completed. First, is that an overall system architecture and behavior is developed. This involves deconstructing the requirements and features to manageable blocks. This results in the development of two preliminary system diagrams; one for the hardware and one for the software. 


