319 research outputs found

    MicroShell Minimalist Shell for Xilinx Microprocessors

    Get PDF
    MicroShell is a lightweight shell environment for engineers and software developers working with embedded microprocessors in Xilinx FPGAs. (MicroShell has also been successfully ported to run on ARM Cortex-M1 microprocessors in Actel ProASIC3 FPGAs, but without project-integration support.) Micro Shell decreases the time spent performing initial tests of field-programmable gate array (FPGA) designs, simplifies running customizable one-time-only experiments, and provides a familiar-feeling command-line interface. The program comes with a collection of useful functions and enables the designer to add an unlimited number of custom commands, which are callable from the command-line. The commands are parameterizable (using the C-based command-line parameter idiom), so the designer can use one function to exercise hardware with different values. Also, since many hardware peripherals instantiated in FPGAs have reasonably simple register-mapped I/O interfaces, the engineer can edit and view hardware parameter settings at any time without stopping the processor. MicroShell comes with a set of support scripts that interface seamlessly with Xilinx's EDK tool. Adding an instance of MicroShell to a project is as simple as marking a check box in a library configuration dialog box and specifying a software project directory. The support scripts then examine the hardware design, build design-specific functions, conditionally include processor-specific functions, and complete the compilation process. For code-size constrained designs, most of the stock functionality can be excluded from the compiled library. When all of the configurable options are removed from the binary, MicroShell has an unoptimized memory footprint of about 4.8 kB and a size-optimized footprint of about 2.3 kB. Since MicroShell allows unfettered access to all processor-accessible memory locations, it is possible to perform live patching on a running system. This can be useful, for instance, if a bug is discovered in a routine but the system cannot be rebooted: Shell allows a skilled operator to directly edit the binary executable in memory. With some forethought, MicroShell code can be located in a different memory location from custom code, permitting the custom functionality to be overwritten at any time without stopping the controlling shell

    FPGA Coprocessor Design for an Onboard Multi-Angle Spectro-Polarimetric Imager

    Get PDF
    A multi-angle spectro-polarimetric imager (MSPI) is an advanced camera system currently under development at JPL for possible future consideration on a satellite-based Aerosol-Cloud-Environ - ment (ACE) interaction study. The light in the optical system is subjected to a complex modulation designed to make the overall system robust against many instrumental artifacts that have plagued such measurements in the past. This scheme involves two photoelastic modulators that are beating in a carefully selected pattern against each other. In order to properly sample this modulation pattern, each of the proposed nine cameras in the system needs to read out its imager array about 1,000 times per second. The onboard processing required to compress this data involves least-squares fits (LSFs) of Bessel functions to data from every pixel in realtime, thus requiring an onboard computing system with advanced data processing capabilities in excess of those commonly available for space flight. As a potential solution to meet the MSPI onboard processing requirements, an LSF algorithm was developed on the Xilinx Virtex-4FX60 field programmable gate array (FPGA). In addition to configurable hardware capability, this FPGA includes Power -PC405 microprocessors, which together enable a combination hardware/ software processing system. A laboratory demonstration was carried out based on a hardware/ software co-designed processing architecture that includes hardware-based data collection and least-squares fitting (computationally), and softwarebased transcendental function computation (algorithmically complex) on the FPGA. Initial results showed that these calculations can be handled using a combination of the Virtex- 4TM Power-PC core and the hardware fabric

    FPGA Coprocessor for Accelerated Classification of Images

    Get PDF
    An effort related to that described in the preceding article focuses on developing a spaceborne processing platform for fast and accurate onboard classification of image data, a critical part of modern satellite image processing. The approach again has been to exploit the versatility of recently developed hybrid Virtex-4FX field-programmable gate array (FPGA) to run diverse science applications on embedded processors while taking advantage of the reconfigurable hardware resources of the FPGAs. In this case, the FPGA serves as a coprocessor that implements legacy C-language support-vector-machine (SVM) image-classification algorithms to detect and identify natural phenomena such as flooding, volcanic eruptions, and sea-ice break-up. The FPGA provides hardware acceleration for increased onboard processing capability than previously demonstrated in software. The original C-language program demonstrated on an imaging instrument aboard the Earth Observing-1 (EO-1) satellite implements a linear-kernel SVM algorithm for classifying parts of the images as snow, water, ice, land, or cloud or unclassified. Current onboard processors, such as on EO-1, have limited computing power, extremely limited active storage capability and are no longer considered state-of-the-art. Using commercially available software that translates C-language programs into hardware description language (HDL) files, the legacy C-language program, and two newly formulated programs for a more capable expanded-linear-kernel and a more accurate polynomial-kernel SVM algorithm, have been implemented in the Virtex-4FX FPGA. In tests, the FPGA implementations have exhibited significant speedups over conventional software implementations running on general-purpose hardware

    Calibrating the Mixing Length Parameter for a Red Giant Envelope

    Get PDF
    Two-dimensional hydrodynamical simulations were made to calibrate the mixing length parameter for modeling red giant's convective envelope. As was briefly reported in Asida & Tuchman (97), a comparison of simulations starting with models integrated with different values of the mixing length parameter, has been made. In this paper more results are presented, including tests of the spatial resolution and Large Eddy Simulation terms used by the numerical code. The consistent value of the mixing length parameter was found to be 1.4, for a red giant of mass 1.2 solar-mass, core mass of 0.96 solar-mass, luminosity of 200 solar-luminosities, and metallicity Z=0.001.Comment: 18 pages, 1 table, 13 figures. Accepted for publication in Ap.

    Forced Stratified Turbulence: Successive Transitions with Reynolds Number

    Full text link
    Numerical simulations are made for forced turbulence at a sequence of increasing values of Reynolds number, R, keeping fixed a strongly stable, volume-mean density stratification. At smaller values of R, the turbulent velocity is mainly horizontal, and the momentum balance is approximately cyclostrophic and hydrostatic. This is a regime dominated by so-called pancake vortices, with only a weak excitation of internal gravity waves and large values of the local Richardson number, Ri, everywhere. At higher values of R there are successive transitions to (a) overturning motions with local reversals in the density stratification and small or negative values of Ri; (b) growth of a horizontally uniform vertical shear flow component; and (c) growth of a large-scale vertical flow component. Throughout these transitions, pancake vortices continue to dominate the large-scale part of the turbulence, and the gravity wave component remains weak except at small scales.Comment: 8 pages, 5 figures (submitted to Phys. Rev. E

    Entropy production and Lyapunov instability at the onset of turbulent convection

    Full text link
    Computer simulations of a compressible fluid, convecting heat in two dimensions, suggest that, within a range of Rayleigh numbers, two distinctly different, but stable, time-dependent flow morphologies are possible. The simpler of the flows has two characteristic frequencies: the rotation frequency of the convecting rolls, and the vertical oscillation frequency of the rolls. Observables, such as the heat flux, have a simple-periodic (harmonic) time dependence. The more complex flow has at least one additional characteristic frequency -- the horizontal frequency of the cold, downward- and the warm, upward-flowing plumes. Observables of this latter flow have a broadband frequency distribution. The two flow morphologies, at the same Rayleigh number, have different rates of entropy production and different Lyapunov exponents. The simpler "harmonic" flow transports more heat (produces entropy at a greater rate), whereas the more complex "chaotic" flow has a larger maximum Lyapunov exponent (corresponding to a larger rate of phase-space information loss). A linear combination of these two rates is invariant for the two flow morphologies over the entire range of Rayleigh numbers for which the flows coexist, suggesting a relation between the two rates near the onset of convective turbulence.Comment: 5 pages, 4 figure
    corecore