Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “error detection and error correction”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 145 records · Page 8

New Developments in FPGA Devices: SEUs and Fail-Safe Strategies from the NASA Goddard Perspective

It has been shown that, when exposed to radiation environments, each Field Programmable Gate Array (FPGA) device has unique error signatures. Subsequently, fail-safe and mitigation strategies will differ per FPGA type. In this session several design approaches for safe systems will be presented. It will also explore the benefits and limitations of several mitigation techniques. The intention of the presentation is to provide information regarding FPGA types, their susceptibilities, and proven fail-safe strategies; so that users can select appropriate mitigation and perform the required trade for system insertion. The presentation will describe three types of FPGA devices and their susceptibilities in radiation environments.

Field Programmable Gate Array (FPGA)↗

New Developments in FPGA: SEUs and Fail-Safe Strategies from the NASA Goddard Perspective

It has been shown that, when exposed to radiation environments, each Field Programmable Gate Array (FPGA) device has unique error signatures. Subsequently, fail-safe and mitigation strategies will differ per FPGA type. In this session several design approaches for safe systems will be presented. It will also explore the benefits and limitations of several mitigation techniques. The intention of the presentation is to provide information regarding FPGA types, their susceptibilities, and proven fail-safe strategies; so that users can select appropriate mitigation and perform the required trade for system insertion. The presentation will describe three types of FPGA devices and their susceptibilities in radiation environments.

Error Correction and Detection (EDAC)↗

The Calibration of PIXIE

The FIRAS instrument demonstrated the use of an external calibrator to compare the sky to an instrumented blackbody. The PIXIE calibrator is improved from -35 dB to -65 dB. Another significant improvement is the ability to insert the calibrator into either input of the FTS. This allows detection and correction of additional errors, reduces the effective calibration noise by a factor of 2, eliminates an entire class of systematics and allows continuous observations. This paper presents the design and use of the PIXIE calibrator.

Fixsen, D. J.↗

Ten Years of VIIRS On-Orbit Geolocation Calibration and Performance

The first innovative Visible Infrared Imaging Radiometer Suite (VIIRS) sensor aboard the Suomi National Polar-orbiting Partnership (SNPP) satellite has been in operation for 10 years since its launch on 28 October 2011. The second VIIRS sensor aboard the first Join Polar Satellite System (JPSS-1) satellite has been in operation for 4 years since its launch on 18 November 2017, which became NOAA-20. Well-geolocated and radiometrically calibrated Level-1 sensor data records (SDRs) from VIIRS are crucial to numerical weather prediction (NWP) and Level-2+ environmental data record (EDR) algorithms and products. The high quality of Level-2+ EDRs is a requirement for the continuity of NASA Earth science data records (ESDRs) and climate data records (CDRs), one of the two objectives of the SNPP mission and one of the three elements in the JPSS mission objective. The other objective of the SNPP mission is risk reduction for the follow-on JPSS missions. This paper summarizes the on-orbit geolocation calibration and validation (Cal/Val) activities for both VIIRS sensors onboard SNPP and NOAA-20 in the past 10 years. These activities include nominal geolocation Cal/Val activities, risk reduction activities, and improvements for the on-orbit VIIRS sensor operations. After these activities, sub-pixel geolocation accuracy is achieved. Nadir equivalent geolocation uncertainty is generally within 75 m (1-σ), or 20% imagery band pixels, in either the along-scan or along-track direction for both SNPP and NOAA-20 VIIRS sensors. The worst 16-day measured geolocation errors (radial, 3-σ) are 280 m and 267 m, respectively, in the latest SNPP and NOAA-20 VIIRS data collections, which are better than the required accuracy of 375 m (radial, 3-σ). The risk reduction activities also improved VIIRS builds for JPSS-3 and JPSS-4 satellites, and provide lessons learned for other VIIRS-like sensor builds.

VIIRS↗

Error-correcting codes for high-speed digital computers

Published document discusses method for correcting errors. According to this method, computer operation becomes fault-tolerant, i.e., its operation is error-free in spite of single hardware element malfunction. Also, method provides for detection and correction of repetitive and spurious processing and transmission errors.

Campbell, R. D.↗

Integrated source and channel encoded digital communication system design study

The results of several studies Space Shuttle communication system are summarized. These tasks can be divided into the following categories: (1) phase multiplexing for two- and three-channel data transmission, (2) effects of phase noise on the performance of coherent communication links, (3) analysis of command system performance, (4) error correcting code tradeoffs, (5) signal detection and angular search procedure for the shuttle Ku-band communication system, and (6) false lock performance of Costas loop receivers.

Huth, G. K.↗

On the undetected error probability of a concatenated coding scheme for error control

Consider a concatenated coding scheme for error control on a binary symmetric channel, called the inner channel. The bit error rate (BER) of the channel is correspondingly called the inner BER, and is denoted by Epsilon (sub i). Two linear block codes, C(sub f) and C(sub b), are used. The inner code C(sub f), called the frame code, is an (n,k) systematic binary block code with minimum distance, d(sub f). The frame code is designed to correct + or fewer errors and simultaneously detect gamma (gamma +) or fewer errors, where + + gamma + 1 = to or d(sub f). The outer code C(sub b) is either an (n(sub b), K(sub b)) binary block with a n(sub b) = mk, or an (n(sub b), k(Sub b) maximum distance separable (MDS) code with symbols from GF(q), where q = 2(b) and the code length n(sub b) satisfies n(sub)(b) = mk. The integerim is the number of frames. The outercode is designed for error detection only.

Deng, H.↗

Optical system storage design with diffractive optical elements

Optical data storage systems are gaining widespread acceptance due to their high areal density and the ability to remove the high capacity hard disk from the system. In magneto-optical read-write systems, a small rotation of the polarization state in the return signal from the MO media is the signal which must be sensed. A typical arrangement used for detecting these signals and correcting for errors in tracking and focusing on the disk is illustrated. The components required to achieve these functions are listed. The assembly and alignment of this complex system has a direct impact on cost, and also affects the size, weight, and corresponding data access rates. As a result, integrating these optical components and improving packaging techniques is an active area of research and development. Most designs of binary optic elements have been concerned with optimizing grating efficiency. However, rigorous coupled wave models for vector field diffraction from grating surfaces can be extended to determine the phase and polarization state of the diffracted field, and the design of polarization components. A typical grating geometry and the phase and polarization angles associated with the incident and diffracted fields are shown. In our current stage of work, we are examining system configurations which cascade several polarization functions on a single substrate. In this design, the beam returning from the MO disk illuminates a cascaded grating element which first couples light into the substrate, then introduces a quarter wave retardation, then a polarization rotation, and finally separates s- and p-polarized fields through a polarization beam splitter. The input coupler and polarization beam splitter are formed in volume gratings, and the two intermediate elements are zero-order elements.

Kostuk, Raymond K.↗

Optical Modem Enabling Broadband Datacom Links for Crewed Cis-Lunar Missions

We report on the design, development, and testing of our high-power broadband optical modem supporting NASA’s crewed Artemis-2 mission. The O2O modem will be mounted in the crewed Orion module and provide a broadband 505,000 km bi-directional optical link back to earth while en route to the moon. The full-duplex modem consists of a high-power optical transmitter and receiver optimized for serially-concatenated pulse-position modulation (SCPPM). The transmitter is a master-oscillator power-amplifier optical architecture using efficient cladding-pumped amplification in erbium-ytterbium co-doped fiber. The transmitter outputs up to 1 W at ≈1550 nm (limited for eye safety) and supports 6 different user-rates ranging from 20.39 Mb/s to 260.95 Mb/s using PPM16 and PPM32 modulation formats. The optical receiver supports two user-rates: 10.19 Mb/s and 20.39 Mb/s with both rates employing PPM32. The narrowband receiver filtering is optimized to simultaneously accept four separate wavelength channels to mitigate atmospherics through spatial diversity. A configurable interleaver provides additional protection against atmospherics-based signal fading and a powerful soft-decision error correction scheme enables highly sensitive detection. The measured sensitivities at the two bit-rates are -73.8 and -71.8dBm, respectively. The architecture was designed for reliable operation in space, featuring automatic hardware interlocks, pump sparing for the amplifiers, and autonomous operation of all internal hardware and software control loops. The protoflight unit (PFU) was put through rigorous environmental testing which included pyroshock, vibration, electromagnetic interference/compatibility, and thermal-vacuum testing. The modem successfully passed all the environmental screening and has been declared at Technology Readiness Level (TRL) 6.

space communications↗

The Effectiveness of TAG or Guard-Gates in SET Suppression Using Delay and Dual-Rail Configurations at 0.35 microns

Design options for decreasing the susceptibility of integrated circuits to Single Event Upset (SEU) fall into two categories: (1) increasing the critical charge to cause an upset at a particular node, and (2) employing redundancy to mask or correct errors. With decreasing device sizes on an Integrated Circuit (IC), the amount of charge required to represent a logic state has steadily reduced. Critical charge methods such as increasing drive strength or increasing the time required to change state as in capacitive or resistive hardening or delay based approaches extract a steadily increasing penalty as a percentage of device resources and performance. Dual redundancy is commonly assumed only to provide error detection with Triple Modular Redundancy (TMR) required for correction, but less well known methods employ dual redundancy to achieve full error correction by voting two inputs with a prior state to resolve ambiguity. This requires special circuits such as the Whitaker latch [1], or the guard-gate [2] which some of us have called a Transition AND Gate (TAG) [3]. A 2-input guard gate is shown in Figure 1. It is similar to a Muller Completion Element [4] and relies on capacitance at node "out" to retain the prior state when inputs disagree, while eliminating any output buffer which would be susceptible to radiation strikes. This paper experimentally compares delay based and dual rail flip-flop designs wherein both types of circuits employ guard-gates to optimize layout and performance, and draws conclusions about design criteria and suitability of each option. In both cases a design goal is protection against Single Event Transients (SET) in combinational logic as well as SEU in the storage elements. For the delay based design, it is also a goal to allow asynchronous clear or preset inputs on the storage elements, which are often not available in radiation tolerant designs.

Shuler, Robert L.↗

Self-correcting, synchronizing ring counter using integrated circuit devices

Three nand gate circuits are used to add error detection and reset logic circuitry for initiating and retaining the correct binary state in the flip-flop circuits of a ring counter. As the input signals are counted, the position of the specified state moves in ordered sequence around circuit loop.

Maasberg, W. A.↗

Program Instrumentation and Trace Analysis

Several attempts have been made recently to apply techniques such as model checking and theorem proving to the analysis of programs. This shall be seen as a current trend to analyze real software systems instead of just their designs. This includes our own effort to develop a model checker for Java, the Java PathFinder 1, one of the very first of its kind in 1998. However, model checking cannot handle very large programs without some kind of abstraction of the program. This paper describes a complementary scalable technique to handle such large programs. Our interest is turned on the observation part of the equation: How much information can be extracted about a program from observing a single execution trace? It is our intention to develop a technology that can be applied automatically and to large full-size applications, with minimal modification to the code. We present a tool, Java PathExplorer (JPaX), for exploring execution traces of Java programs. The tool prioritizes scalability for completeness, and is directed towards detecting errors in programs, not to prove correctness. One core element in JPaX is an instrumentation package that allows to instrument Java byte code files to log various events when executed. The instrumentation is driven by a user provided script that specifies what information to log. Examples of instructions that such a script can contain are: 'report name and arguments of all called methods defined in class C, together with a timestamp'; 'report all updates to all variables'; and 'report all acquisitions and releases of locks'. In more complex instructions one can specify that certain expressions should be evaluated and even that certain code should be executed under various conditions. The instrumentation package can hence be seen as implementing Aspect Oriented Programming for Java in the sense that one can add functionality to a Java program without explicitly changing the code of the original program, but one rather writes an aspect and compiles it into the original program using the instrumentation. Another core element of JPaX is an observation package that supports the analysis of the generated event stream. Two kinds of analysis are currently supported. In temporal analysis the execution trace is evaluated against formulae written in temporal logic. We have implemented a temporal logic evaluator on finite traces using the Maude rewriting system from SRI International, USA. Temporal logic is defined in Maude by giving its syntax as a signature and its semantics as rewrite equations. The resulting semantics is extremely efficient and can handle event streams of hundreds of millions events in few minutes. Furthermore, the implementation is very succinct. The second form of even stream analysis supported is error pattern analysis where an execution trace is analyzed using various error detection algorithms that can identify error-prone programming practices that may potentially lead to errors in some different executions. Two such algorithms focusing on concurrency errors have been implemented in JPaX, one for deadlocks and the other for data races. It is important to note, that a deadlock or data race potential does not need to occur in order for its potential to be detected with these algorithms. This is what makes them very scalable in practice. The data race algorithm implemented is the Eraser algorithm from Compaq, however adopted to Java. The tool is currently being applied to a code base for controlling a spacecraft by the developers of that software in order to evaluate its applicability.

Havelund, Klaus↗

An extended d(min) = 4 RS code

A minimum distance d sub m - 4 extended Reed - Solomon (RS) code over GF (2 to the b power) was constructed. This code is used to correct any single byte error and simultaneously detect any double byte error. Features of the code; including fast encoding and decoding, are presented.

Deng, H.↗

Digital correction of geometric and radiometric errors in ERTS data.

The sensor systems of the ERTS-A satellite are discussed and sources of geometric and radiometric errors in the received images are identified. Digital algorithms are presented for detection of reseau and ground control points, for rapid implementation of geometric corrections, and for radiometric correction of errors caused by shading, image motion, modulation transfer function, and quantum and systematic noise.

Bakis, R.↗

Automated ISS Flight Utilities

During my internship at NASA Johnson Space Center, I worked in the Space Radiation Analysis Group (SRAG), where I was tasked with a number of projects focused on the automation of tasks and activities related to the operation of the International Space Station (ISS). As I worked on a number of projects, I have written short sections below to give a description for each, followed by more general remarks on the internship experience. My first project is titled "General Exposure Representation EVADOSE", also known as "GEnEVADOSE". This project involved the design and development of a C++/ ROOT framework focused on radiation exposure for extravehicular activity (EVA) planning for the ISS. The utility helps mission managers plan EVAs by displaying information on the cumulative radiation doses that crew will receive during an EVA as a function of the egress time and duration of the activity. SRAG uses a utility called EVADOSE, employing a model of the space radiation environment in low Earth orbit to predict these doses, as while outside the ISS the astronauts will have less shielding from charged particles such as electrons and protons. However, EVADOSE output is cumbersome to work with, and prior to GEnEVADOSE, querying data and producing graphs of ISS trajectories and cumulative doses versus egress time required manual work in Microsoft Excel. GEnEVADOSE automates all this work, reading in EVADOSE output file(s) along with a plaintext file input by the user providing input parameters. GEnEVADOSE will output a text file containing all the necessary dosimetry for each proposed EVA egress time, for each specified EVADOSE file. It also plots cumulative dose versus egress time and the ISS trajectory, and displays all of this information in an auto-generated presentation made in LaTeX. New features have also been added, such as best-case scenarios (egress times corresponding to the least dose), interpolated curves for trajectories, and the ability to query any time in the EVADES output. As mentioned above, GEnEVADOSE makes extensive use of ROOT version 6, the data analysis framework developed at the European Organization for Nuclear Research (CERN), and the code is written to the C++11 standard (as are the other projects). My second project is the Automated Mission Reference Exposure Utility (AMREU).Unlike GEnEVADOSE, AMREU is a combination of three frameworks written in both Python and C++, also making use of ROOT (and PyROOT). Run as a combination of daily and weekly cron jobs, these macros query the SRAG database system to determine the active ISS missions, and query minute-by-minute radiation dose information from ISS-TEPC (Tissue Equivalent Proportional Counter), one of the radiation detectors onboard the ISS. Using this information, AMREU creates a corrected data set of daily radiation doses, addressing situations where TEPC may be offline or locked up by correcting doses for days with less than 95% live time (the total amount time the instrument acquires data) by averaging the past 7 days. As not all errors may be automatically detectable, AMREU also allows for manual corrections, checking an updated plaintext file each time it runs. With the corrected data, AMREU generates cumulative dose plots for each mission, and uses a Python script to generate a flight note file (.docx format) containing these plots, as well as information sections to be filled in and modified by the space weather environment officers with information specific to the week. AMREU is set up to run without requiring any user input, and it automatically archives old flight notes and information files for missions that are no longer active. My other projects involve cleaning up a large data set from the Charged Particle Directional Spectrometer (CPDS), joining together many different data sets in order to clean up information in SRAG SQL databases, and developing other automated utilities for displaying information on active solar regions, that may be used by the space weather environment officers to monitor solar activity. I consulted my mentor Dr. Ryan Rios and Dr. Kerry Lee for project requirements and added features, and ROOT developer Edmond Offermann for advice on using the ROOT library. I also received advice and feedback from Dr. Janet Barzilla of SRAG, who tested my code. Besides these inputs, I worked independently, writing all of the code by myself. The code for all these projects is documented throughout, and I have attempted to write it in a modular format. Assuming that ROOT is updated accordingly, these codes are also Y2038-compliant (and Y10K-compliant). This allows the code to be easily referenced, modified and possibly repurposed for non-ISS missions in the future, should the necessary inputs exist. These projects have taught me a lot about coding and software design - I have become a much more skilled C++ programmer and ROOT user, and I also learned to code in Python and PyROOT (and its advantages and disadvantages compared to C++/ ROOT). Furthermore, I have learned about space radiation and radiation modeling, topics that greatly interest me as I pursue a degree in physics. Working alongside experimental physicists like Dr. Rios, I have developed a greater understanding and appreciation for experimental science, something I have always leaned towards but to which I lacked significant exposure. My work in SRAG has also given me the invaluable opportunity to witness the work environment for physicists at NASA, and what a career in academia may look like at a government laboratory such as NASA Johnson Space Center. As I continue my studies and look forward to graduate school and a future career, this experience at NASA has given me a meaningful and enjoyable opportunity to put my skills to use and see what my future career path might hold.

Offermann, Jan Tuzlic↗

Concurrent variation of response bias and sensitivity in an operant-psychophysical test.

The yes-no signal detection procedure was applied to a single-response operant paradigm in which rats discriminated between a standard auditory intensity and attenuated comparison values. The payoff matrix was symmetrical (with reinforcing brain stimulation for correct detections and brief time-out for errors), but signal probability and intensity differences were varied to generate a family of isobias and isosensitivity functions. The d' parameter remained fairly constant across a wide range of bias levels. Isobias functions deviated from a strict matching strategy as discrimination difficulty increased, although an orderly relation was maintained between signal probability value and the degree and direction of response bias.

Terman, M.↗

A Framework for Performing V&V within Reuse-Based Software Engineering

Verification and validation (V&V) is performed during application development for many systems, especially safety-critical and mission-critical systems. The V&V process is intended to discover errors, especially errors related to critical processing, as early as possible during the development process. Early discovery is important in order to minimize the cost and other impacts of correcting these errors. In order to provide early detection of errors, V&V is conducted in parallel with system development, often beginning with the concept phase. In reuse-based software engineering, however, decisions on the requirements, design and even implementation of domain assets can be made prior to beginning development of a specific system. In this case, V&V must be performed during domain engineering in order to have an impact on system development. This paper describes a framework for performing V&V within architecture-centric, reuse-based software engineering. This framework includes the activities of traditional application-level V&V, and extends these activities into domain engineering and into the transition between domain engineering and application engineering. The framework includes descriptions of the types of activities to be performed during each of the life-cycle phases, and provides motivation for the activities.

Addy, Edward A.↗

Modeling of a bubble-memory organization with self-checking translators to achieve high reliability.

Study of the design and modeling of a highly reliable bubble-memory system that has the capabilities of: (1) correcting a single 16-adjacent bit-group error resulting from failures in a single basic storage module (BSM), and (2) detecting with a probability greater than 0.99 any double errors resulting from failures in BSM's. The results of the study justify the design philosophy adopted of employing memory data encoding and a translator to correct single group errors and detect double group errors to enhance the overall system reliability.

Bouricius, W. G.↗