顯示具有 gaming platform 標籤的文章。 顯示所有文章
顯示具有 gaming platform 標籤的文章。 顯示所有文章

2013年6月25日 星期二

Case study: Challenges in incarnating a credit card sized SBC

Single Board 3.5inch, Console server, gaming platform

The initial goal in creating the Raspberry Pi credit card sized, Linux-based Single Board Computer (SBC) – targeted primarily at education – was to develop a response to the decline of students engaging with computer science and related engineering disciplines. Our desire was to reverse the trend of children becoming consumers rather than creators. The following case study follows the hardware development process from an early failure, initial prototypes, and through to the finished production design.

Over recent years there has been an increasing trend for children to be consumers of digital content rather than be future creators or engineers. This trend is driven by manufacturers looking to provide a seamless experience for target customers on a variety of electronic platforms, from gaming consoles to tablets and laptop computers.
As a result, access to raw I/O has become restricted. Similarly, any packaged provision of a programming environment is an anathema to the products’ commercial goals. The knowledge required to create “hello world” or flash an external LED has become simply too vast and the opportunity to learn vital skills such as structuring/codifying ideas and debugging has been largely subsumed by a click-and-shoot world. Any motivation to get under the hood and see how these products work is largely dissipated by the impenetrable barriers presented by these “locked down” systems.
The challenge in developing the Raspberry Pi credit card sized, Linux-based SBC was to break down these barriers and provide access at a sufficiently low cost so any fear of breaking the hardware was effectively removed. Having the hardware is only half the story; the provision of a rich set of programming environments such as Scratch and Python with libraries to allow control of peripheral hardware provides an engaging toolset for learning through experimentation and play in either the formal classroom or at the many school and independent maker (hackspace) clubs. The following case study shows how Raspberry Pi was developed from the ground up.

refer to :http://embedded-computing.com/articles/case-card-sized-sbc/

2013年5月1日 星期三

(Software) Static analysis helps manage risk

When it comes to software development, the old adage is best spun in a slightly different way: better "early" than never. Accordingly, static analysis can help those developing in Java to stay one step ahead of potential coding problems.
Embedded computers, gaming platform, Console server
Today’s software development teams are under immense pressure; the market demands high-quality, secure releases at a constantly increasing pace while security threats become more and more sophisticated. Considering the high cost of product failures and security breaches, it is more important than ever to address these risks throughout the software development process. Potential problems need to be spotted early to prevent release delays or, worse, post-release failures.Fortunately, there are numerous tools to help developers manage these risks, helping to identify potential problems early in the development phase when issues are less disruptive and easier to fix. They are readily accessible to developers and easy to use within many development environments. This applies to developers programming in any language; however, we focus on Java in this discussion (see Sidebar 1).


Embedded computers, gaming platform, Console server
Sidebar 1: Though Java’s mature ecosystem, numerous IDEs, and abundance of reference materials ease Java application development, they can also bestow a false sense of security upon developers, who should be watchful to mitigate Java’s weaknesses.




Static analysis helps mitigate risk
When considering static analysis tools for Java or otherwise, it is important to understand what these tools are. The term “static analysis” refers to the approach of analyzing a program without executing it. As we’ll see in the next section, static analysis tools can be used to produce reports on anything from coding standard violations to specific errors or vulnerabilities. Simply put, static analysis tools analyze source code to find information useful for managing risk.
One benefit of static analysis is that it can be performed early in the development cycle, often before the application will even execute. It is commonly integrated into an automated build, so that there is virtually no overhead to running frequent analyses. By integrating static analysis into the inner development loop, users maximize the value they get from such tools.
When used in conjunction with a well-designed development process, static analysis tools provide crucial visibility into the state of the software. This enables development teams to understand the level of risk in their code and where the risk resides so they can take action to mitigate or remove it entirely (Table 1). Individual tools generally focus on specific problems faced by software development teams, and teams often use a combination of these tools to get a comprehensive view of their development effort.


Embedded computers, gaming platform, Console server
Table 1: Static analysis tools typically find specific types of issues, with each type representing a different class of risk and requiring a different type of action.




Developers have traditionally used static analysis tools via a simple IDE integration or as stand-alone tools. While the tools add significant value to the development effort, the proliferation of tools has created efficiency problems as developers spend more and more time using and maintaining different tools and sifting through more and more results. To wisely manage development resources, teams must be able to effectively manage, filter, and prioritize all those issues.
To address these problems, development testing platforms have emerged to unify and manage all of this static analysis information in one place, simplifying the user experience and increasing visibility and efficiency at larger scales while providing relevant access controls and reporting. Development testing platforms are even starting to blur the line between static analysis and other types of analysis by utilizing – during the static analysis process – artifacts generated during earlier program runs. For example, these platforms can use code coverage information from test runs during static analysis to effectively identify missing test cases automatically. The traditional approach to this problem requires significant manual effort based on simple coverage thresholds. By leveraging data from different sources, these platforms are able to significantly reduce the manual effort and time required to accomplish this with other methods.
Selecting static analysis tools for Java
The most popular, free, static analysis tools for Java are probably Checkstyle, PMD, and FindBugs. While they all fall under the “static analysis” umbrella, their strengths are so sufficiently different that many consider the tools to be complementary rather than alternatives.
Checkstyle
Checkstyle is billed as “a development tool to help programmers write Java code that adheres to a coding standard[1],” although it does not strictly limit itself to coding standard enforcement. It provides a documented API for users to define their own custom checks. Typical coding standards utilize basic rules to make code more readable and reduce the likelihood that future code changes will introduce bugs. Standards tend to define conventions about formatting (white space, bracketing, naming, commenting, and so on), inheritance, and visibility. When adequately enforced, well-designed coding standards can help developers reduce risk. Enforcement can be difficult, though, since coding standards generate a lot of violations and there can be significant pressure to ignore noisy rules. With legacy code, this can make enforcing new coding standards unfeasible. While most of the issues identified by Checkstyle do not affect code correctness, robustness, or performance, there is real value in helping developers quickly understand code written by others. It is not always obvious how to quantify the risk represented by these violations and it is problematic to measure risk directly from violation counts, but changes in those counts can be a reasonable proxy for changes in risk.
PMD
PMD is described as “…a source code analyzer. It finds unused variables, empty catch blocks, unnecessary object creation, and so forth[2].” It, too, is evolving and the current checks focus mainly on syntactic oddities that might belie developer mistakes, such as overcomplicated expressions, empty blocks, unused variables, parameters, and class members. It also has a popular module to identify duplicated code. Because it is generally reporting “suspicious code” as opposed to specific coding errors or standards violations, the user will need to carefully select the checks enabled for everyday use. Because enforced rules are selected by the user, this tool can be useful for both legacy and greenfield projects, and it is often easy to correlate these counts with risk. Unfortunately, it might not be obvious whether reported issues should be considered defects or maintenance concerns.
FindBugs
FindBugs is probably the most popular of these tools. It looks for actual bugs in the code, as well as suspicious code and standards violations. Because of the wide range of reported issues, it is important to use a configuration that includes the most relevant checks for the project. This is especially true for legacy projects, as it’s easier to keep new projects clean from the beginning. Like PMD, any team can benefit from using FindBugs and associating issue counts to risk can be straightforward.
Commercial static analysis tools show similar diversity, identifying everything from standards violations to actual defects and security vulnerabilities. To illustrate how a commercial tool might compare to a free tool, I analyzed version 1.496 of the Jenkins job management system (www.jenkins-ci.org) using a proprietary static analysis solution and version 2.0.1 of FindBugs, with all checks enabled. On this code base, 852 unique issues were identified – with only 28 issues identified by both products. The proprietary solution found 197 unique issues, with 188 of those coming from high-impact categories (security and concurrency bugs, resource leaks, and unhandled exceptions like null dereferences). FindBugs found 627 unique issues, with 29 coming from those high-impact categories. In short, each of the tools found significant high-impact issues missed by the others, so using a proprietary solution or FindBugs alone will leave significant risk undetected.
Development testing – Tying it all together
Static analysis tools are a powerful ally in the software development effort for Java developers, as these tools enable developers to gain insight into risk throughout the software development life cycle. They are typically easy to automate, enabling users to spend their time fixing problems rather than running the tools.
When it comes to managing risk, more information is generally better – as long as that information illuminates actual sources of risk that developers care about. When deciding which tools to adopt, remember to consider not just the types of issues that analysis tools identify, but how those tools can work together to provide additional value. Also, be sure to configure them appropriately so that the number of issues doesn’t overwhelm your users.
Modern development testing platforms take testing tools to another level by unifying the data in one place, simplifying the user experience, and creating opportunities to provide even more value.




...
refer to:
http://embedded-computing.com/articles/static-helps-manage-risk-java/

2013年4月16日 星期二

Milestone events in the EDA industry

Embedded computers, gaming platform, Console server
This seems to be the year for milestone events in the EDA industry, though calculations show some of the “anniversary” designations to be premature. Nevertheless, the first big EDA event of the year is the Design and Verification Conference (DVCon), held in San Jose, CA every February. DVCon celebrated its 10th anniversary this year, after a transformation from HDLcon in 2003, which followed the earlier union of the VHDL International User’s Forum and International Verilog HDL Conference. Those predecessor conferences trace their origins back 25 years and 20 years, respectively.
After DVCon, EDA marketers quickly turn to preparations for the June Design Automation Conference (DAC), perhaps with a warm-up at Design, Automation, and Test in Europe (DATE) in March. DAC is the big show, however, and this year marks the 50th such event (and its 49th anniversary). Phil Kaufman Award winner Pat Pistilli received the EDA industry’s’ highest honor for his pioneer work in creating DAC, which grew from his amusingly-named Society to Help Avoid Redundant Effort (SHARE) conference in 1964.
Milestones inevitably lead to some reflection, but also provide an opportunity to look forward to what the future will bring. In our 2nd annual EDA Digest Resource Guide, we will be asking EDA companies to share what they see as the biggest challenges facing the industry in the next five years, and how the industry will change to meet those challenges. Will future innovations be able to match the impact of the greatest past developments in EDA, which enabled the advances in electronics that we benefit from today?


.......


refer to : http://dsp-fpga.com/articles/looking-back-at-the-milestones-as-dac-50-approaches/

2013年4月3日 星期三

The embedded idea comes alive

Embedded computers, gaming platform, Console server

Delivering excellent performance comparable to high-end desktop systems, it also features excellent 2D and 3D graphics capabilities as well as hardware video decoding.

MicroMax The M-Max 810 PR/MS3 high-performance rugged industrial computer provides reliable operation in tough environments including transportation (ground, rail, air and marine), mining and processing applications. 

MicroMax announced today it is exhibiting its M-Max 810 PR/MS3, an ATR-based system for avionics, at Embedded World 2013 in Nuremberg.
Sam Abarbanel, President of MicroMax, stated “Our newest embedded ddition to the M-Max line of rugged computers demonstrates MicroMax’s excellence at building tough machines for harsh environments. Our unique fully sealed fanless ATRenclosure is especially designed to embedded form-factor boards. We proudly demonstrate this system at Embedded World as yet another example of our quality engineering and manufacturing abilities.”
refer to: http://embedded-computing.com/news/micromax-exhibited-embedded-world-in-nuremburg/#at_pco=cfd-1.0

2013年3月5日 星期二

Embedded and medical devices

Embedded computers, gaming platform, Console server

Stephen covers key system software issues that embedded systems developers must address, including next-generation SoCs that contain multiple cores and methodologies to properly allocate the applications between several types of operating systems.

Embedded developers face several decisions when developing medical embedded devices, from selecting the best system software for optimal application performance, to understanding the interactions and limitations between the software operating system and target hardware. Should the software engineer use a small micro-kernel,Real-Time Operating System (RTOS), or a General Purpose OS (GPOS) such as Android or Linux? Other considerations include the physical size of the system for portability and functionality requirements, including faster performance, power consumption, data protection, and display (user interface) technology. And FDA certification and industry standards that affect embedded software selection come into the mix as well.

Modern medical devices are evolving at a record clip. From portable wireless units for patients to use at home to larger more complex devices used by healthcare professionals at a facility, there’s no question we are at the forefront of developing new ways to empower patients and medical professionals alike. How do we make sure the system software that controls these devices does exactly as planned with little to no risk of harming the patient?

...

refer:
http://embedded-computing.com/articles/minimizing-software-todays-medical-devices/

2013年2月19日 星期二

2013 Embedded world exhibition is bigger than ever!

Embedded computers, gaming platform, Console server
The international embedded community meets for three days at its annual highlight in Nürnberg from 26–28 February – the embedded world Exhibition&Conference. The exhibition has been the main hub of one of the most dynamic and highly specialized technology sectors for over 10 years. It is the world’s biggest international exhibition and conference event on embedded system technology. “embedded world will remain focused in 2013 but still grow appreciably. It is the largest event in the world for embedded system technologies and the most professional shop window,” explains Alexander Mattausch, Exhibition Manager of the embedded world Exhibition&Conference at NürnbergMesse.
 
Acrosser technology  ---------------->Booth Hall 2 2-519