Electrical Engineering Crossword (Issue 318)

 

The answers to the Circuit Cellar 318 crossword puzzle are now available.318 crossword (key)

Across

  1. ANTIPARTICLE—Same mass, opposite charge
  2. AMORPHOUS—A solid without form and shape
  3. BIFURCATE—Split
  4. BAUD—Bd
  5. TOKEN—Permission to communicate
  6. LED—Holonyak, General Electric
  7. UHF—300 MHz–1 GHz
  8. CRC—Code for error detection
  9. VOLUME—Total space in a solid
  10. SKEW—Unparalleled lines that don’t intersect
  11. RECEPTACLE—Jack

Down

  1. ANGSTROM—1/10,000,000,000 m
  2. ENUMERATED—enum
  3. PYRAMID—V = 1/3Bh
  4. MAXWELL—Magnetic flux
  5. ATOMICNUMBER—Protons in a nucleus
  6. ULTRASONIC—Above 20,000 Hz
  7. JFET—Voltage-controlled transistor, not current-controlled
  8. UNIVERSAL—Motor that can operate via an AC or DC source
  9. CERMET—Has properties of both ceramic and metal

Issue 318: EQ Answers

Here are the answers to the four EQ problems that appeared in Circuit Cellar 318.

Problem 1: Outside of simply moving data from one place to another, most of the work of a computer is performed by “dyadic” operators — operations that combine two values to form a third value. Examples include addition, subtraction and multiplication for arithmetic; AND, OR and XOR for logical operations. A dyadic operation requres three operands — two “source” values and a “destination” location. One way to classify a computer’s ISA (instruction set architecture) is by the number of operands that are explicitly specified in a dyadic instruction. The classifications are:

  • 0-address (stack machine)
  • 1-address (accumulator-based)
  • 2-address
  • 3-address

Can you describe some of the pros and cons of each of these choices?

Answer 1:

0-address

A 0-address machine is also known as a “stack” machine. All operators take their source operands from the stack and place their result on it. The only instructions that contain memory addresses are the “load” and “store” locations that transfer data between the stack and main memory.

Pros: Short instructions, no implicit limit on the size of the stack.

Cons: More instructions required to implement most computations. Parallel computations and common subexpressions require a lot of “stack shuffling” operations.

1-address

In this type of machine, the ALU output is always loaded into an “accumulator” register, which is also always one of the source operands.

Pros: Simple to construct. Eliminates many of the separate “load” operations.

Cons: Requires results to be explicitly stored before doing another calculation. Longer instructions, depending on the number of registers, etc.

2-address

This type of machine allows the two source operands to be specified independently, but requires that the destination be the same as one of the source operands.

Pros: Allows more than one destination, eliminating more “move” operations.

Cons: Even longer instructions.

3-address

This type of machine allows all three operands to be specified independently.

Pros: Most flexible, eliminates most data moves.

Cons: Longest instructions.

To summarize, the short instructions of the stack machine allow a given computation to be done in the smallest amount of program memory, but require more instruction cycles (time) to complete it. The flexibility of the 3-address architecture allow a computation to be done in the fewest instruction cycles (least time), but it consumes more program memory.


Problem 2: In order to be generally useful, a computer ISA must be “Turing complete”, which means that it can — at least theoretically, if not in practice — perform any computation that a Turing Machine can do. This includes things like reading and writing data from a memory, performing arithmetic and logical computations on the data, and altering its behavior based on the values in the data. Most practical computers have relatively rich instruction sets in oder to accomplish this with a reasonable level of efficiency. However, what is the minimum number of instructions required to achieve Turing-completeness?

Answer 2: Just one instruction, chosen carefully, is sufficient to achieve Turing-completeness. One example would be the instruction “subtract one from memory and branch if the result is not zero”. All of the operations of an ordinary computer can be synthesized as sequences of these “DJN” instructions. Note that since there is only one choice, there is no need to include an “opcode” field in the coding of each instruction. Instead, each instruction simply contains a pair of addresses: the data to be decremented, and the destination address of the jump.


Problem 3: Some processor ISAs are notorious for not being “friendly” to procedure-oriented languages such as C, requiring a lot of work on the part of the compiler in order produce reasonably efficient code, and even then, often introducing some restrictions for the programmer. What are some key features of an ISA that would make it “C-friendly”

Answer 3: The key concept in procedure-oriented languages like C is that of function composition. This means that it must be easy to produce new functions by combining calls to existing functions, and that functions can be called in the process of building argument lists for other functions. The C language takes this to the extreme, in the sense that every operator &mdash including the assignment operator — creates an expression that has a result value that can be used to build larger expressions. Therefore, one key architectural element is the ability to create function contexts — sets of parameters, local variables and return values — that can be “stacked” to arbitrary levels. In terms of an ISA, this means that it must support the direct implementation of at least one data stack that includes the ability to index locations within that stack relative to a stack pointer and/or a frame pointer. This concept is a direct abstraction from the hardware addressing modes of the PDP-11 minicomputer, the machine on which the first versions of C were developed. The PDP-11 ISA allows any of its 8 general-purpose registers to be used to address memory, with addressing modes that include “predecrement” and “postincrement” — implementing “push” and “pop” operations as single instructions — as well as “indexed indirect”, which allows local variables to be addressed as an offset from the stack pointer.


Problem 4: Sometimes a computer must work on data that is wider than its native word width. What is the key feature of its ISA that makes this easy to do?

Answer 4: The key feature in an ISA that allows arithmetic and shift operations to be extended to multiples of the processor’s native word width is that of a “carry” status bit. This bit allows one bit of information to be “carried” forward from one instruction to the next without requiring extra instructions to be executed.

For arithmetic operations, this bit remembers whether the instruction operating on the lower-order words of the operands resulted in a numerical “carry” or “borrow” that will affect the instruction operating on the next-higher-order words. Similarly, for shift and rotate instructions, this bit remembers the state of the bit shifted out of one word that needs to be shifted into the next word.

Contributor: David Tweed

Raspberry Pi Maker: An Interview with Eben Upton

About five years ago, a small group of enthusiast designers led by Eben Upton launched a small, inexpensive computer that looked nothing like a normal computer. The bare green PCB board appealed to makers and hackers and the option to connect a keyboard and screen appealed to traditional computer nerds. Today, the Raspberry Pi is the best-selling personal computer in the United Kingdom.

Circuit Cellar recently visited Cambridge, England, to interview Upton about his work at the Raspberry Pi Foundation and more. Check it out.

Arrow Electronics and Conexant Systems Collaborate on Development of Amazon Alexa-Enabled Smart Home Products

Arrow Electronics recently agreed to distribute and source components and provide technical design support for Conexant’s AudioSmart 2-Mic Development Kit for Amazon Alexa Voice Service (AVS). Conexant recently announced a collaboration with Amazon on an AVS-approved AudioSmart 2-Mic Development Kit. Featuring the Conexant AudioSmart CX20921 high-performance hands-free Voice Input Processor and “Alexa” wake word technology, the Conexant AudioSmart 2-Mic Development Kit will help developers and manufacturers quickly and easily build Alexa-enabled products that provide users with an ideal voice experience.Arrow Conexant - kit

The Conexant AVS-approved AudioSmart 2-Mic Development Kit is designed to be easily integrated into any third-party AVS system prototype based on the Raspberry Pi. Its dual-microphone voice processing capability recognizes the “Alexa” wake word and delivers speech requests from anywhere in a room—even in noisy, real-world conditions. It also enables voice barge-in capabilities, allowing users to interrupt their Alexa device when it is playing music or other types of sound.

Source: Conexant

16-Bit, 1.5-Msps Per Channel Octal Simultaneous Sampling SAR ADC

Linear Technology Corp. recently introduced the LTC2320-16 16-bit, 1.5-Msps per channel, no-latency successive approximation register (SAR) ADC. Featuring eight simultaneously sampling channels supporting a rail-to-rail input common mode range, the LTC2320-16 offers a flexible analog front end that accepts fully differential, unipolar or bipolar analog input signals. It also accepts arbitrary input signals and maintains an 82-dB signal-to-noise ratio (SNR) and high common mode rejection ratio (CMRR) of 102 dB when sampling input signals up to the Nyquist frequency. Linear LTC2320-16

 

The LTC2320-16’s specs, features, and benefits:

  • Wide input bandwidth enables the digitization of input signals up to the Nyquist frequency of 750 kHz
  • 1.5 Msps per channel throughput rate
  • Eight simultaneous sampling channels
  • ±2 LSB INL (typ)
  • Guaranteed 16-bit, no missing codes
  • 8.192 VPP true differential inputs with rail-to-rail common mode
  • 82-dB SNR (typ) at fIN = 500 kHz
  • –90-dB THD (Typ) at fIN = 500kHz
  • Guaranteed operation to 125°C
  • Single 3.3- or 5-V supply
  • Low drift (20 ppm/°C max) 2.048- or 4.096-V internal reference
  • 1.8-to-2.5-V I/O voltages
  • CMOS or LVDS SPI-Compatible Serial I/O
  • Power dissipation 20 mW/Ch (typ, 5-V operation)
  • 52-pin 7 mm × 8 mm QFN package

The LTC2320-16 is available in commercial, industrial, and automotive (–40° to 125°C) temperature grades. Pricing begins at $16.50 each in 1,000-piece quantities. The DC2395A evaluation board for the LTC2320 SAR ADC family is available at www.linear.com/demo.

Source: Linear Technology

New Scalable Biometric Sensor Platform for Wearables and the IoT

Valencell and STMicroelectronics recently launched a new development kit for biometric wearables. Featuring STMicro’s compact SensorTile turnkey multi-sensor module and Valencell’s Benchmark biometric sensor system, the platform offers designers a scalable solution for designers building biometric hearables and wearables.

The SensorTile IoT module’s specs and features:

  • 13.5 mm × 13.5 mm
  • STM32L4 microcontroller
  • Bluetooth Low Energy chipset
  • a wide spectrum of MEMS sensors (accelerometer, gyroscope, magnetometer, pressure, and temperature sensor)
  • Digital MEMS microphone

Valencell’s Benchmark sensor system’s specs and features:

  • PerformTek processor communicates with host processor using a simple UART or I2C interface protocol
  • Acquires heart rate, VO2, and calorie data
  • Standard flex connector interface

Source: Valencell

Tracealyzer 3.1 Offers Support for Trace Streaming Over USB

Percepio AB recently released Tracealyzer 3.1, which is a trace tool that supports RTOS trace using just a standard USB cable. You can increase your development speed by using Tracealyzer for debugging, validation, profiling, documentation, and training. Percepio-Tracealyzer

The trace recorder library is now easier to configure for streaming over custom interfaces, and includes support for USB streaming on STM32. (It can be adapted for other microcontrollers.) USB offers excellent performance for RTOS tracing and over 600 KB/s has been measured on an STM32 using USB 2, several times more than required. Other stream ports include TCP/IP and SEGGER J-Link debug probes. Tracealyzer 3.1 can also receive trace streams via Windows COM ports (e.g., from USB CDC connections), UART connections, or any virtual COM port provided by other target interfaces.

Tracealyzer 3.1 can identify memory leaks in systems that use dynamic memory allocation. It can record memory allocation events (e.g. malloc, free) from multiple operating systems, and it can display such allocations that have not been released. Since the memory allocation events are linked to the task trace, you quickly find the context of the allocation and investigate the problem. The recorder library simplifies integration and now provides a common API for both streaming and snapshot recording.

 

Source: Percepio AB

 

Mouser Shipping CC1350 SensorTag Development Kit and Antenna Kit

Mouser Electronics how has two new Texas Instruments development kits in stock: the CC1350 SensorTag development kit and the sub-1-GHz and 2.4-GHz antenna kit for LaunchPad and SensorTag. Designed for low-power wide area networks (LPWAN), the CC1350 features dual-band connectivity that expands the functionality of a sub-1 GHz network with Bluetooth low energy (BLE) implementations.The sub-1 GHz and 2.4 GHz antenna kit for LaunchPad and SensorTag enables you to perform tests to determine the optimal antenna for applications.Texas Instr Mouser CC1350

CC1350 SensorTag development kit:

  • Expands the SensorTag ecosystem with a single-chip Bluetooth Smart radio and a sub-1-GHz radio.
  • Offers easy mobile phone integration with long-range connectivity based on a 32-bit ARM Cortex-M3 processor
  • Runs for years on a single coin cell battery
  • Enables direct connection with Bluetooth to smartphones and tablets, combined with a 2-km range for the sub-1-GHz radio interface

The sub-1 GHz and 2.4 GHz antenna kit for LaunchPad and SensorTag includes:

  • 16 tested and characterized antennas for frequencies from 169 MHz to 2.4 GHz, including PCB antennas, Helical antenna, chip antennas, and dual-band antennas for 868 or 915 MHz combined with 2.4 GHz.
  • A µSMA (JSC) cable to connect to LaunchPad and SensorTag kits, including the CC1350 SensorTag development kit, as well as the CC2650 LaunchPad and CC1310 LaunchPad.
  • A µSMA (JSC)-to-SMA connector for connecting the kit or antennas to a standard SMA connector

Source: Mouser

Smart Home Reference Designs for IoT Device Development

Silicon Labs recently launched two new wireless occupancy sensor and smart outlet reference designs for the home automation. FCC and UL-precertified, the reference designs comprise hardware, firmware, and software tools that enable you to develop Internet of Things (IoT) systems based on Silicon Labs’s ZigBee “Golden Unit” Home Automation (HA 1.2) software stack and multiprotocol Wireless Gecko SoC portfolio. Both reference designs include Silicon Labs’s EFR32MG Mighty Gecko SoC.SiliconLabs Ref Design

 

The occupancy sensor reference design is a precertified ZigBee HA 1.2 solution featuring a wirelessly connected passive IR sensor along with ambient light and temperature/relative humidity sensors from Silicon Labs. The compact occupancy sensor’s battery-powered design provides up to five years of operation. The sensor’s detection range extends up to approximately 40′ with a 90° viewing window.

The smart outlet reference design is a precertified solution for a wirelessly controlled outlet plug. You can use it to power and control a wide variety of home and building automation products. Powered by an AC main-voltage line, the smart outlet communicates wirelessly to ZigBee mesh networks. It features the following: built-in diagnostics and metering with a user-friendly web interface; an AC voltage range of 110 to 240 V for global use along with a robust 15-A load current; and integrated high-accuracy sensors (ambient light and temperature/humidity).

 

Silicon Labs’s occupancy sensor and smart outlet reference designs are currently available. The RD-0078-0201 occupancy sensor reference design costs $49. The RD-0051-0201 smart outlet reference design costs $119. (All prices USD MSRP.)

Source: Silicon Labs

Scalable Wearable Development Kit

ON Semiconductor recently announced the availability of a new Wearable Development Kit (WDK1.0). The kit comprises the following: a touchscreen display; wired and AirFuel-compatible wireless charging capability; a six-axis motion sensor and temperature sensor; an alarm, timer, and stopwatch; schematics; firmware and sample code; a dock station for charging; and a downloadable SmartApp for evaluating and controlling the smartwatches multiple functions.OnSemi Wearable Dev Kit

The WDK1.0’s features, specs, and benefits:

  • NCP6915 power Management IC provides five LDOs and one DC-DC
  • NCP1855 battery charger IC, an LC709203F fuel gauge, and a 10-W rated SCY1751 wireless charging front-end controller
  • MEMS-based FIS1100 IMU, with three‐axis gyroscope and three‐axis accelerometer operation for multidimensional motion tracking
  • Embedded temperature sensor included and an LC898301 driver IC for initiating haptic feedback
  • nRF52832 multi-protocol system-on-chip (SoC)
  • Eclipse-based IDE
  • 1.44″ 128 × 128 pixel TFT display with a capacitive touch screen
  • 26‐pin expansion port

Source: ON Semiconductor

Mini Multi-Sensor Module for Wearables & IoT Designs

STMicroelectronics’s miniature SensorTile sensor board of its type comprises an MEMS accelerometer, gyroscope, magnetometer, pressure sensor, and a MEMS microphone. With the on-board low-power STM32L4 microcontroller, the SensorTile can be used as a sensing and connectivity hub for developing products ranging from wearables to Internet of Things (IoT) devices.

The 13.5 mm × 13.5 mm SensorTile features a Bluetooth Low-Energy (BLE) transceiver including an onboard miniature single-chip balun, as well as a broad set of system interfaces that support use as a sensor-fusion hub or as a platform for firmware development. You can plug it into a host board. At power-up, it immediately starts streaming inertial, audio, and environmental data to STMicro’s BlueMS free smartphone app.

Software development is simple with an API based on the STM32Cube Hardware Abstraction Layer and middleware components, including the STM32 Open Development Environment. It’s fully compatible with the Open Software eXpansion Libraries (Open.MEMS, Open.RF, and Open.AUDIO), as well as numerous third-party embedded sensing and voice-processing projects. Example programs are available (e.g., software for position sensing, activity recognition, and low-power voice communication).

The complete kit includes a cradle board, which carries the 13.5 mm × 13.5 mm SensorTile core system in standalone or hub mode and can be used as a reference design. This compact yet fully loaded board contains a humidity and temperature sensor, a micro-SD card socket, as well as a lithium-polymer battery (LiPo) charger. The pack also contains a LiPo rechargeable battery and a plastic case that provides a convenient housing for the cradle, SensorTile, and battery combination.

SensorTile kit’s main features, specs, and benefits:

  • Cradle/expansion board with an analog audio output, a micro-USB connector, and an Arduino-like interface that can be plugged into any STM32 Nucleo board to expand developers’ options for system and software development.
  • Programming cable
  • LSM6DSM 3-D accelerometer and 3-D gyroscope
  • LSM303AGR 3-D magnetometer and 3-D accelerometer
  • LPS22HB pressure sensor/barometer
  • MP34DT04 digital MEMS microphone
  • STM32L476 microcontroller
  • BlueNRG-MS network processor with integrated 2.4-GHz radio

Source: STMicroelectronics

New Bluetooth 5-Ready SoC Offers Increased Range, Bandwidth, & Security

Nordic Semiconductor’s new Bluetooth 5-ready nRF52840 SoC is well suited for smart home, advanced wearables, and industrial IoT applications. In addition to supporting 802.15.4, it’s capable of delivering Bluetooth low energy (BLE) wireless connectivity with up to 4× the range or 2× the raw data bandwidth (2 Mbps) compared with the BLE implementation of Bluetooth 4.2Nordic nRF52840

The nRF52840 SoC’s features, specs, and benefits:

  • Features a 64-MHz, 32-bit ARM Cortex M4F processor employed on Nordic’s nRF52832 SoC
  • A new radio architecture with on-chip PA boosting output power considerably, and extending the link budget for “whole house” applications, a doubling of flash memory to 1 MB, and a quadrupling of RAM memory to 256 KB
  • Support for Bluetooth 5, 802.15.4, ANT, and proprietary 2.4-GHz wireless technologies
  • A full-speed USB 2.0 controller
  • A host of new peripherals (many with EasyDMA) including a quad-SPI
  • Operates from power supplies above 5 V  (e.g., rechargeable battery power sources)
  • Incorporates the ARM CryptoCell-310 cryptographic accelerator offering best-in-class security for Cortex-M based SoCs. Extensive crypto ciphers and key generation and storage options are also available.

Nordic released the S140 SoftDevice and associated nRF5 SDK with support for Bluetooth 5 longer range and high throughput modes in December 2016. Engineering samples and development kits are now available. Production variants of the nRF52840 will be available in Q4 2017.

Source: Nordic Semiconductor 

Free “Internet of Things For Dummies” E-Book

Qorvo recently launched its latest e-book series, Internet of Things For Dummies, in partnership with John Wiley and Sons. The two-volume series—Internet of Things For Dummies and Internet of Things Applications For Dummies—is available as a free download.

Intended for both technical and nontechnical professionals, the e-books cover the basics of the IoT market, RF challenges, and how it’s being implemented.

Volume 1 — Internet of Things For Dummies:

  • IoT and smart home market opportunities
  • An overview of different IoT communications standards
  • Tips for leveraging small data and self-learning in the cloud

Volume 2 — Internet of Things Applications For Dummies:

  • Deliver IoT applications with a smart home butler
  • Create consumer lifestyle systems for the smart home
  • Develop IoT applications beyond the smart home

Source: Qorvo

Flowcode 7 (Part 3): Modbus and DMX512 (Sponsor: Matrix)

In the first article in this series, you were introduced to Flowcode 7, flowchart-driven electronic IDE that enables you to produce hex code for more than 1,300 different microcontrollers, including PIC8, PIC16, PIC32, AVR, Arduino, and ARM. The second article detailed how to get working with displays in Flowcode. This article will investigate some of the more complex communications components, Modbus and DMX. Both of these components basically let you do the same thing, which is to use one device (Master) to control one or more remote devices (Slaves). Access the third article.

Click to download the free article

Want a Free Trial and/or Buy Flowcode 7? Download Now

Flowcode is an IDE for electronic and electromechanical system development. Pro engineers, electronics enthusiasts, and academics can use Flowcode to develop systems for control and measurement based on microcontrollers or on rugged industrial interfaces using Windows-compatible personal computers. Visit www.flowcode.co.uk/circuitcellar to learn about Flowcode 7. You can access a free version, or you can purchase advanced features and professional Flowcode licenses through the modular licensing system. If you make a purchase through that page, Circuit Cellar will receive a commission.