The Hardware Software Interface
The new ARM Edition of Computer Organization and Design features a subset of the ARMv8-A architecture, which is used to present the fundamentals of hardware technologies, assembly language, computer arithmetic, pipelining, memory hierarchies, and I/O.
With the post-PC era now upon us, Computer Organization more » and Design moves forward to explore this generational change with examples, exercises, and material highlighting the emergence of mobile computing and the Cloud. Updated content featuring tablet computers, Cloud infrastructure, and the ARM (mobile computing devices) and x86 (cloud computing) architectures is included.
An online companion Web site provides links to a free version of the DS-5 Community Edition (a free professional quality tool chain developed by ARM), as well as additional advanced content for further study, appendices, glossary, references, and recommended reading.
* Covers parallelism in depth with examples and content highlighting parallel hardware and software topics
* Features the Intel Core i7, ARM Cortex-A53, and NVIDIA Fermi GPU as real-world examples throughout the book
* Adds a new concrete example, "Going Faster," to demonstrate how understanding hardware can inspire software optimizations that improve performance by 200X
* Discusses and highlights the "Eight Great Ideas" of computer architecture: Performance via Parallelism; Performance via Pipelining; Performance via Prediction; Design for Moore's Law; Hierarchy of Memories; Abstraction to Simplify Design; Make the Common Case Fast; and Dependability via Redundancy.
* Includes a full set of updated exercises « less
Create Native watchOS Apps with the WatchKit SDK
You've got a great idea for an Apple Watch app. But how do you get your app from idea to wrist? This book shows you how to make native watchOS apps for Apple's most personal device yet. You'll learn how to display beautiful interfaces to the user, how to use the watch's heart rate monitor and other hardware more » features, and the best way to keep everything in sync across your users' devices. New in this edition is coverage of native apps for watchOS 2. With the new version of the WatchKit SDK in Xcode 7, your apps run directly on the watch.
On Apple Watch, your app is right on your users' wrists, making your code closer than ever before. Create native watchOS apps by extending your iPhone app with a WatchKit Extension, giving your users quick access to your app's most important features and an intimate user experience that's always within arm's reach.
You won't just be creating apps - with Glances to provide timely information, notifications to inform your users of the latest updates, and watch face complications to show your users data as soon as they raise their wrists, your watchOS apps will be the best the App Store has to offer.
Any book can teach you how to make a watch app. This book will help focus your efforts and refine your app's feature set. Which features make sense on the watch? How should you organize them? You'll learn what to consider when judging watch app features, allowing you to come up with the best strategy for your app. You'll test your apps on real Apple Watch hardware, and by the end of this book, you'll be ready to ship to the App Store.
What You Need:
You'll need a Mac running OS X Yosemite capable of running Xcode 7 or later. To build your apps for your Apple Watch, you'll need to be running watchOS 2 or later, connected to a compatible iPhone. « less
Applying the Arm Mbed
Fast and Effective Embedded Systems Design is a fast-moving introduction to embedded systems design, applying the innovative ARM mbed and its web-based development environment. Each chapter introduces a major topic in embedded systems, and proceeds as a series of practical experiments, adopting a "learning more » through doing" strategy. Minimal background knowledge is needed to start. C/C++ programming is applied, with a step-by-step approach which allows you to get coding quickly. Once the basics are covered, the book progresses to some "hot" embedded issues - intelligent instrumentation, wireless and networked systems, digital audio and digital signal processing. In this new edition all examples and peripheral devices are updated to use the most recent libraries and peripheral devices, with increased technical depth, and introduction of the "mbed enabled" concept.
Written by two experts in the field, this book reflects on the experimental results, develops and matches theory to practice, evaluates the strengths and weaknesses of the technology and techniques introduced, and considers applications in a wider context.
New Chapters on:
Bluetooth and ZigBee communication
Internet communication and control, setting the scene for the Internet of Things
Digital Audio, with high-fidelity applications and use of the I2S bus
Power supply, and very low power applications
The development process of moving from prototyping to small-scale or mass manufacture, with a commercial case study.
Updates all examples and peripheral devices to use the most recent libraries and peripheral products
Includes examples with touch screen displays and includes high definition audio input/output with the I2S interface
Covers the development process of moving from prototyping to small-scale or mass manufacture with commercial case studies
Covers hot embedded issues such as intelligent instrumentation, networked systems, closed loop control, and digital signal processing « less
* Arm yourself with an arsenal of advanced chart types and geocoding to efficiently and engagingly present information
* Map a grid over a network node diagram and use that grid to demonstrate loads, processing time, and more in Tableau
* Integrate R with Tableau by utilizing R functions, more » libraries, and saved models
Tableau has emerged as one of the most popular Business Intelligence solutions in recent times, thanks to its powerful and interactive data visualization capabilities. This book will empower you to become a master in Tableau by exploiting the many new features introduced in Tableau 10.0.
You will embark on this exciting journey by getting to know the valuable methods of utilizing advanced calculations to solve complex problems. These techniques include creative use of different types of calculations such as row-level, aggregate-level, and more. You will discover how almost any data visualization challenge can be met in Tableau by getting a proper understanding of the tool's inner workings and creatively exploring possibilities.
You'll be armed with an arsenal of advanced chart types and techniques to enable you to efficiently and engagingly present information to a variety of audiences through the use of clear, efficient, and engaging dashboards. Explanations and examples of efficient and inefficient visualization techniques, well-designed and poorly designed dashboards, and compromise options when Tableau consumers will not embrace data visualization will build on your understanding of Tableau and how to use it efficiently.
By the end of the book, you will be equipped with all the information you need to create effective dashboards and data visualization solutions using Tableau.
WHAT YOU WILL LEARN
* Create a worksheet that can display the current balance for any given period in time
* Recreate a star schema from in a data warehouse in Tableau
* Combine level of detail calculations with table calculations, sets, and parameters
* Create custom polygons to build filled maps for area codes in the USA
* Visualize data using a set of analytical and advanced charting techniques
* Know when to use Tableau instead of PowerPoint
* Build a dashboard and export it to PowerPoint
ABOUT THE AUTHOR
David Baldwin has provided consulting in the business intelligence sector for 17 years. His experience includes Tableau training and consulting, developing BI solutions, project management, technical writing, and the web and graphic design. His vertical experience includes financial, healthcare, human resource, aerospace, energy, education, government, and entertainment industries. As a Tableau trainer and consultant, David enjoys serving a variety of clients throughout the USA. Tableau provides David a platform that collates his broad experience into a skill set that can service a diverse client base.
TABLE OF CONTENTS
1. Getting Up to Speed – a Review of the Basics
2. All about Data – Getting Your Data Ready
3. All about Data – Joins, Blends, and Data Structures
4. All about Data – Data Densification, Cubes, and Big Data
5. Table Calculations
6. Level of Detail Calculations
7. Beyond the Basic Chart Types
9. Tableau for Presentations
10. Visualization Best Practices and Dashboard Design
11. Improving Performance
12. Interacting with Tableau Server
13. R Integration « less
A Guide to Controlling Autonomous Robots
Start programming robots NOW!
Learn hands-on, through easy examples, visuals, and code
This is a unique introduction to programming robots to execute tasks autonomously. Drawing on years of experience in artificial intelligence and robot programming, Cameron and Tracey Hughes introduce the reader more » to basic concepts of programming robots to execute tasks without the use of remote controls.
Robot Programming: A Guide to Controlling Autonomous Robots takes the reader on an adventure through the eyes of Midamba, a lad who has been stranded on a desert island and must find a way to program robots to help him escape. In this guide, you are presented with practical approaches and techniques to program robot sensors, motors, and translate your ideas into tasks a robot can execute autonomously. These techniques can be used on today’s leading robot microcontrollers (ARM9 and ARM7) and robot platforms (including the wildly popular low-cost Arduino platforms, LEGO® Mindstorms EV3, NXT, and Wowee RS Media Robot) for your hardware/Maker/DIY projects. Along the way the reader will learn how to:
* Program robot sensors and motors
* Program a robot arm to perform a task
* Describe the robot’s tasks and environments in a way that a robot can process using robot S.T.O.R.I.E.S.
* Develop a R.S.V.P. (Robot Scenario Visual Planning) used for designing the robot’s tasks in an environment
* Program a robot to deal with the “unexpected” using robot S.P.A.C.E.S.
* Program robots safely using S.A.R.A.A. (Safe Autonomous Robot Application Architecture) Approach
* Program robots using Arduino C/C++ and Java languages
* Use robot programming techniques with LEGO® Mindstorms EV3, Arduino, and other ARM7 and ARM9-based robots. « less
Unleash the power of Banana Pi and use it for home automation, games, and various practical applications
ABOUT THIS BOOK
* Using Banana Pi, learn how to install and build basic projects from start to end
* Learn all the fundamentals and uses of Banana Pi to build projects in a short amount of time
* A step-by-step practical guide that teaches you how to get up and start running with Banana Pi to start more » working on your own projects
WHO THIS BOOK IS FOR
This book is for anyone who wants to explore Banana Pi and get started building projects on their own using it. No prior experience of working with single board computers is required.
WHAT YOU WILL LEARN
* Get started with single-board computing by diving deep into the operating system and hardware of Banana Pi
* Interact with the GPIO pins from scripts and code to start programming on the board
* Connect hardware components to the GPIO pins and control them directly from Banana Pi
* Connect Banana Pi devices with your home network to download packages from the Internet
* Link your Banana Pi remotely with other computers via SSH to run as a headless device
* Work with the onboard IR receiver of Banana Pi as well as connect external sensors and interact with them through their code
* Build an Internet radio powered by Banana Pi to stream podcasts and music
* Build and run a home server using Banana Pi to sync files, calendars, and contacts
Banana Pi is a small but powerful ARM board that can run on multiple operating systems. Banana Pi has been adopted by tech-savvy enthusiasts and hobbyists to develop their projects.
This book will take you from opening your Banana Pi's box for the first time all the way to working with hardware and code. We will explore the different configuration options and operating system choices. You'll proceed to working with Banana Pi hooked up to a breadboard and connecting hardware components such as LEDs and motors to the board. Further, you'll build an Internet radio working with an LCD display, interacting with user input, and streaming audio over the Internet. This book also acquaints you with another really popular use of Banana Pi, home servers. Finally, you'll realize the power of the robust hardware of Banana Pi by playing games on Android and Linux.
By the end of this book, you should be familiar with the basics of development using Banana Pi, from installation to building basic projects. « less
Connecting Electronics to the Cloud
The Photon is an open source, inexpensive, programmable, WiFi-enabled module for building connected projects and prototypes. Powered by an ARM Cortex-M3 microcontroller and a Broadcom WiFi chip, the Photon is just as happy plugged into a hobbyist's breadboard as it is into a product rolling off of an more » assembly line.
While the Photon--and its accompanying cloud platform--is designed as a ready-to-go foundation for product developers and manufacturers, it's great for Maker projects, as you'll see in this book. You'll learn how to get started with the free development tools, deploy your sketches over WiFi, and build electronic projects that take advantage of the Photon's processing power, cloud platform, and input/output pins. What's more, the Photon is backward-compatible with its predecessor, the Spark Core. « less
This book provides a hands-on approach to learning ARM assembly language with the use of a TI microcontroller. The book starts with an introduction to computer architecture and then discusses number systems and digital logic. The text covers ARM Assembly Language, ARM Cortex Architecture and its components, more » and Hardware Experiments using TILM3S1968. Written for those interested in learning embedded programming using an ARM Microcontroller. « less
Crafting Electronics Systems with Beaglebone and BeagleBone Black
This comprehensive book provides detailed materials for both novice and experienced programmers using all BeagleBone variants which host a powerful 32-bit, super-scalar TI Sitara ARM Cortex A8 processor. Authored by Steven F. Barrett and Jason Kridner, a seasoned ECE educator along with the founder of more » Beagleboard.org, respectively, the work may be used in a wide variety of projects from science fair projects to university courses and senior design projects to first prototypes of very complex systems. Beginners may access the power of the "Bone" through the user-friendly Bonescript examples.
Seasoned users may take full advantage of the Bone's power using the underlying Linux-based operating system, a host of feature extension boards (Capes) and a wide variety of Linux community open source libraries. The book contains background theory on system operation coupled with many well-documented, illustrative examples. Examples for novice users are centered on motivational, fun robot projects while advanced projects follow the theme of assistive technology and image processing applications.
* Provides detailed examples for all BeagleBone variants, including the newest "next generation" BeagleBone Black
* BeagleBone is a low cost, open hardware, expandable computer first introduced in november 2011 by beagleboard
* BeagleBone variants, including the original BeagleBone and the new beaglebone black, hosts a powerful 32-bit, super-scalar arM Cortex A8 processor
* BeagleBone is small enough to fit in a small mint tin box
* "Bone" may be used in a wide variety of projects from middle school science fair projects to university courses and senior design projects to first prototypes of very complex systems
* Novice users may access the power of the bone through the user-friendly bonescript environment
* Seasoned users may take full advantage of the Bone's power using the underlying Linux-based operating system
* A host of feature extension boards (Capes) and a wide variety of Linux community open source libraries are available
* The book provides an introduction to this powerful computer and has been designed for a wide variety of users
* The book contains background theory on system operation coupled with many well-documented, illustrative examples
* Examples for novice users are centered on motivational, fun robot projects
* Advanced projects follow the theme of assistive technology and image processing applications « less
This new edition of Linux for Embedded and Real-Time Applications provides a practical introduction to the basics and the latest developments in this rapidly evolving technology. Ideal for those new to using Linux in an embedded environment, it takes a hands-on approach and covers key concepts plus specific more » applications.
Key features include:
* Substantially updated to focus on a specific ARM-based single board computer (SBC) as a target for embedded application programming
* Includes an introduction to Android programming
With this book you will learn:
* The basics of Open Source, Linux and the embedded space
* How to set up a simple system and tool chain
* How to use simulation for initial application testing
* Network, graphics and Android programming
* How to use some of the many Linux components and tools
* How to configure and build the Linux kernel, BusyBox and U-Boot bootloader
* Provides a hands-on introduction for engineers and software developers who need to get up to speed quickly on embedded Linux, its operation and its capabilities – including Android
* Updated and changed accompanying tools, with a focus on the author’s specially-developed Embedded Linux Learning Kit « less