Search NASA⌕ Search

SEARCH · Search NASA

Results for “arraying algorithms”

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 433 records · Page 24

A novel VLSI processor architecture for supercomputing arrays

Design of the processor element for general purpose massively parallel supercomputing arrays is highly complex and cost ineffective. To overcome this, the architecture and organization of the functional units of the processor element should be such as to suit the diverse computational structures and simplify mapping of complex communication structures of different classes of algorithms. This demands that the computation and communication structures of different class of algorithms be unified. While unifying the different communication structures is a difficult process, analysis of a wide class of algorithms reveals that their computation structures can be expressed in terms of basic IP,IP,OP,CM,R,SM, and MAA operations. The execution of these operations is unified on the PAcube macro-cell array. Based on this PAcube macro-cell array, we present a novel processor element called the GIPOP processor, which has dedicated functional units to perform the above operations. The architecture and organization of these functional units are such to satisfy the two important criteria mentioned above. The structure of the macro-cell and the unification process has led to a very regular and simpler design of the GIPOP processor. The production cost of the GIPOP processor is drastically reduced as it is designed on high performance mask programmable PAcube arrays.

Venkateswaran, N.↗

Parallel asynchronous systems and image processing algorithms

A new hardware approach to implementation of image processing algorithms is described. The approach is based on silicon devices which would permit an independent analog processing channel to be dedicated to evey pixel. A laminar architecture consisting of a stack of planar arrays of the device would form a two-dimensional array processor with a 2-D array of inputs located directly behind a focal plane detector array. A 2-D image data stream would propagate in neuronlike asynchronous pulse coded form through the laminar processor. Such systems would integrate image acquisition and image processing. Acquisition and processing would be performed concurrently as in natural vision systems. The research is aimed at implementation of algorithms, such as the intensity dependent summation algorithm and pyramid processing structures, which are motivated by the operation of natural vision systems. Implementation of natural vision algorithms would benefit from the use of neuronlike information coding and the laminar, 2-D parallel, vision system type architecture. Besides providing a neural network framework for implementation of natural vision algorithms, a 2-D parallel approach could eliminate the serial bottleneck of conventional processing systems. Conversion to serial format would occur only after raw intensity data has been substantially processed. An interesting challenge arises from the fact that the mathematical formulation of natural vision algorithms does not specify the means of implementation, so that hardware implementation poses intriguing questions involving vision science.

Coon, D. D.↗

The factorization of large composite numbers on the MPP

The continued fraction method for factoring large integers (CFRAC) was an ideal algorithm to be implemented on a massively parallel computer such as the Massively Parallel Processor (MPP). After much effort, the first 60 digit number was factored on the MPP using about 6 1/2 hours of array time. Although this result added about 10 digits to the size number that could be factored using CFRAC on a serial machine, it was already badly beaten by the implementation of Davis and Holdridge on the CRAY-1 using the quadratic sieve, an algorithm which is clearly superior to CFRAC for large numbers. An algorithm is illustrated which is ideally suited to the single instruction multiple data (SIMD) massively parallel architecture and some of the modifications which were needed in order to make the parallel implementation effective and efficient are described.

Mckurdy, Kathy J.↗

A Navier-Strokes Chimera Code on the Connection Machine CM-5: Design and Performance

We have implemented a three-dimensional compressible Navier-Stokes code on the Connection Machine CM-5. The code is set up for implicit time-stepping on single or multiple structured grids. For multiple grids and geometrically complex problems, we follow the 'chimera' approach, where flow data on one zone is interpolated onto another in the region of overlap. We will describe our design philosophy and give some timing results for the current code. A parallel machine like the CM-5 is well-suited for finite-difference methods on structured grids. The regular pattern of connections of a structured mesh maps well onto the architecture of the machine. So the first design choice, finite differences on a structured mesh, is natural. We use centered differences in space, with added artificial dissipation terms. When numerically solving the Navier-Stokes equations, there are liable to be some mesh cells near a solid body that are small in at least one direction. This mesh cell geometry can impose a very severe CFL (Courant-Friedrichs-Lewy) condition on the time step for explicit time-stepping methods. Thus, though explicit time-stepping is well-suited to the architecture of the machine, we have adopted implicit time-stepping. We have further taken the approximate factorization approach. This creates the need to solve large banded linear systems and creates the first possible barrier to an efficient algorithm. To overcome this first possible barrier we have considered two options. The first is just to solve the banded linear systems with data spread over the whole machine, using whatever fast method is available. This option is adequate for solving scalar tridiagonal systems, but for scalar pentadiagonal or block tridiagonal systems it is somewhat slower than desired. The second option is to 'transpose' the flow and geometry variables as part of the time-stepping process: Start with x-lines of data in-processor. Form explicit terms in x, then transpose so y-lines of data are in-processor. Form explicit terms in y, then transpose so z-lines are in processor. Form explicit terms in z, then solve linear systems in the z-direction. Transpose to the y-direction, then solve linear systems in the y-direction. Finally transpose to the x direction and solve linear systems in the x-direction. This strategy avoids inter-processor communication when differencing and solving linear systems, but requires a large amount of communication when doing the transposes. The transpose method is more efficient than the non-transpose strategy when dealing with scalar pentadiagonal or block tridiagonal systems. For handling geometrically complex problems the chimera strategy was adopted. For multiple zone cases we compute on each zone sequentially (using the whole parallel machine), then send the chimera interpolation data to a distributed data structure (array) laid out over the whole machine. This information transfer implies an irregular communication pattern, and is the second possible barrier to an efficient algorithm. We have implemented these ideas on the CM-5 using CMF (Connection Machine Fortran), a data parallel language which combines elements of Fortran 90 and certain extensions, and which bears a strong similarity to High Performance Fortran. We make use of the Connection Machine Scientific Software Library (CMSSL) for the linear solver and array transpose operations.

Jespersen, Dennis C.↗

Adaptive and learning control of large space structures

The paper describes the adaptive learning system for space operations which assumes that structural testing can be conducted during deployment and assembly. Simulation results using the solar electric propulsion array and a novel remote sensor are presented; they involve faster scan television coverage of the motions of the array from four cameras on the corners of the Space Shuttle payload bay. The description of the simulation, the filtering algorithm for processing the TV data, the parameter extraction algorithm, and the simulation results are presented.

Montgomery, R. C.↗

A Systolic VLSI Design of a Pipeline Reed-solomon Decoder

A pipeline structure of a transform decoder similar to a systolic array was developed to decode Reed-Solomon (RS) codes. An important ingredient of this design is a modified Euclidean algorithm for computing the error locator polynomial. The computation of inverse field elements is completely avoided in this modification of Euclid's algorithm. The new decoder is regular and simple, and naturally suitable for VLSI implementation.

Shao, H. M.↗

A VLSI design of a pipeline Reed-Solomon decoder

A pipeline structure of a transform decoder similar to a systolic array was developed to decode Reed-Solomon (RS) codes. An important ingredient of this design is a modified Euclidean algorithm for computing the error locator polynomial. The computation of inverse field elements is completely avoided in this modification of Euclid's algorithm. The new decoder is regular and simple, and naturally suitable for VLSI implementation.

Shao, H. M.↗

Advanced optical position sensors for magnetically suspended wind tunnel models

A major concern to aerodynamicists has been the corruption of wind tunnel test data by model support structures, such as stings or struts. A technique for magnetically suspending wind tunnel models was considered by Tournier and Laurenceau (1957) in order to overcome this problem. This technique is now implemented with the aid of a Large Magnetic Suspension and Balance System (LMSBS) and advanced position sensors for measuring model attitude and position within the test section. Two different optical position sensors are discussed, taking into account a device based on the use of linear CCD arrays, and a device utilizing area CID cameras. Current techniques in image processing have been employed to develop target tracking algorithms capable of subpixel resolution for the sensors. The algorithms are discussed in detail, and some preliminary test results are reported.

Lafleur, S.↗

On the structure of parallelism in a highly concurrent PDE solver

A parallel multigrid algorithm for solving elliptic partial differential equations is developed and evaluated. A V-cycle multigrid method is altered to increase the degree of parallelism. A numerical analysis of the resulting concurrent-iteration multigrid algorithm is performed; its architectural implications are considered; highly parallel systems without shared memory are examined (including mesh-connected arrays, mesh-shuffle-connected systems, permutation networks, and direct VLSI embeddings); and the results of numerical experiments are presented in tables and graphs.

Gannon, D.↗

Precise Image-Based Motion Estimation for Autonomous Small Body Exploration

Space science and solar system exploration are driving NASA to develop an array of small body missions ranging in scope from near body flybys to complete sample return. This paper presents an algorithm for onboard motion estimation that will enable the precision guidance necessary for autonomous small body landing. Our techniques are based on automatic feature tracking between a pair of descent camera images followed by two frame motion estimation and scale recovery using laser altimetry data. The output of our algorithm is an estimate of rigid motion (attitude and position) and motion covariance between frames. This motion estimate can be passed directly to the spacecraft guidance and control system to enable rapid execution of safe and precise trajectories.

Johnson, Andrew E.↗

Covisualization by computational optical-sectioning microscopy of integrin and associated proteins at the cell membrane of living onion protoplasts

Using higher-resolution wide-field computational optical-sectioning fluorescence microscopy, the distribution of antigens recognized by antibodies against animal beta 1 integrin, fibronectin, and vitronectin has been visualized at the outer surface of enzymatically protoplasted onion epidermis cells and in depectinated cell wall fragments. On the protoplast all three antigens are colocalized in an array of small spots, as seen in raw images, in Gaussian filtered images, and in images restored by two different algorithms. Fibronectin and vitronectin but not beta 1 integrin antigenicities colocalize as puncta in comparably prepared and processed images of the wall fragments. Several control visualizations suggest considerable specifity of antibody recognition. Affinity purification of onion cell extract with the same anti-integrin used for visualization has yielded protein that separates in SDS-PAGE into two bands of about 105-110 and 115-125 kDa. These bands are again recognized by the visualization antibody, which was raised against the extracellular domain of chicken beta 1 integrin, and are also recognized by an antibody against the intracellular domain of chicken beta 1 integrin. Because beta 1 integrin is a key protein in numerous animal adhesion sites, it appears that the punctate distribution of this protein in the cell membranes of onion epidermis represents the adhesion sites long known to occur in cells of this tissue. Because vitronectin and fibronection are matrix proteins that bind to integrin in animals, the punctate occurrence of antigenically similar proteins both in the wall (matrix) and on enzymatically prepared protoplasts reinforces the concept that onion cells have adhesion sites with some similarity to certain kinds of adhesion sites in animals.

NASA Discipline Plant Biology↗

Effects of a Scanning Reflectarray Antenna on Modulated Data Modeled

The ferroelectric reflectarray is a new type of scanning antenna under development for space and ground communications and radar applications at the NASA Glenn Research Center. The reflectarray offers tremendous cost, gain, and efficiency advantages in comparison to the state-of-the-art phased arrays, but there is an inherent intersymbol interference (ISI) problem with digital communication data streams processed through the array because of the way the reflectarray is operated. This interference stems from the fact that the antenna beam is formed by the superposition of reflected waves from the array elements. The delays from the elements to the observation point of each wave differ. Ferroelectric phase shifters are designed to compensate for the modulo-2p phase differences so that the waves will constructively interfere at the sinusoidal carrier level; however, the delays of the integer-number multiple of the carrier period are not compensated for. This lack of compensation causes ISI in digital modulated signals. ISI has not been a problem with analog modulations and low-rate digital modulations since the distortion (or ISI) introduced is negligible. The problem becomes acute when the data rate gets higher, and the electrical size of the array gets bigger. Moreover, there are intrinsic transient effects associated with the phase shifters and the controller that executes the algorithm to direct the beam. That is, phase shifter updates to redirect the beam may be initiated simultaneously, but nonlinearity will cause different settling times. The ISI problem and other effects ultimately limit the size (gain) and data rate of the reflectarray. An ISI analysis was required to prove or disprove the suitability of the reflectarray antenna for high-rate digitally modulated signals and to give guidance for determining antenna parameters. In this research, the nature of the ISI of the reflectarray has been mathematically modeled.

Romanofsky, Robert R.↗

Rapid Corner Detection Using FPGAs

In order to perform precision landings for space missions, a control system must be accurate to within ten meters. Feature detection applied against images taken during descent and correlated against the provided base image is computationally expensive and requires tens of seconds of processing time to do just one image while the goal is to process multiple images per second. To solve this problem, this algorithm takes that processing load from the central processing unit (CPU) and gives it to a reconfigurable field programmable gate array (FPGA), which is able to compute data in parallel at very high clock speeds. The workload of the processor then becomes simpler; to read an image from a camera, it is transferred into the FPGA, and the results are read back from the FPGA. The Harris Corner Detector uses the determinant and trace to find a corner score, with each step of the computation occurring on independent clock cycles. Essentially, the image is converted into an x and y derivative map. Once three lines of pixel information have been queued up, valid pixel derivatives are clocked into the product and averaging phase of the pipeline. Each x and y derivative is squared against itself, as well as the product of the ix and iy derivative, and each value is stored in a WxN size buffer, where W represents the size of the integration window and N is the width of the image. In this particular case, a window size of 5 was chosen, and the image is 640 480. Over a WxN size window, an equidistance Gaussian is applied (to bring out the stronger corners), and then each value in the entire window is summed and stored. The required components of the equation are in place, and it is just a matter of taking the determinant and trace. It should be noted that the trace is being weighted by a constant k, a value that is found empirically to be within 0.04 to 0.15 (and in this implementation is 0.05). The constant k determines the number of corners available to be compared against a threshold sigma to mark a valid corner. After a fixed delay from when the first pixel is clocked in (to fill the pipeline), a score is achieved after each successive clock. This score corresponds with an (x,y) location within the image. If the score is higher than the predetermined threshold sigma, then a flag is set high and the location is recorded.

Morfopoulos, Arin C.↗

A Pulsar-Based Time-Scale from the International Pulsar Timing Array

We have constructed a new time-scale, TT(IPTA16), based on observations of radio pulsars presented in the first data release from the International Pulsar Timing Array (IPTA). We used two analysis techniques with independent estimates of the noise models for the pulsar observations and different algorithms for obtaining the pulsar time-scale. The two analyses agree within the estimated uncertainties and both agree with TT(BIPM17), a post-corrected time-scale produced by the Bureau International des Poids et Mesures (BIPM). We show that both methods could detect significant errors in TT(BIPM17) if they were present. We estimate the stability of the atomic clocks from which TT(BIPM17) is derived using observations of four rubidium fountain clocks at the US Naval Observatory. Comparing the power spectrum of TT(IPTA16) with that of these fountain clocks suggests that pulsar-based time-scales are unlikely to contribute to the stability of the best time-scales over the next decade, but they will remain a valuable independent check on atomic time-scales. We also find that the stability of the pulsar-based time-scale is likely to be limited by our knowledge of solar-system dynamics, and that errors in TT(BIPM17) will not be a limiting factor for the primary goal of the IPTA, which is to search for the signatures of nano-Hertz gravitational waves.

G. Hobbs↗

Plenoptic Imager for Automated Surface Navigation

An electro-optical imaging device is capable of autonomously determining the range to objects in a scene without the use of active emitters or multiple apertures. The novel, automated, low-power imaging system is based on a plenoptic camera design that was constructed as a breadboard system. Nanohmics proved feasibility of the concept by designing an optical system for a prototype plenoptic camera, developing simulated plenoptic images and range-calculation algorithms, constructing a breadboard prototype plenoptic camera, and processing images (including range calculations) from the prototype system. The breadboard demonstration included an optical subsystem comprised of a main aperture lens, a mechanical structure that holds an array of micro lenses at the focal distance from the main lens, and a structure that mates a CMOS imaging sensor the correct distance from the micro lenses. The demonstrator also featured embedded electronics for camera readout, and a post-processor executing image-processing algorithms to provide ranging information.

Zollar, Byron↗

Automatic generation of efficient array redistribution routines for distributed memory multicomputers

Appropriate data distribution has been found to be critical for obtaining good performance on Distributed Memory Multicomputers like the CM-5, Intel Paragon and IBM SP-1. It has also been found that some programs need to change their distributions during execution for better performance (redistribution). This work focuses on automatically generating efficient routines for redistribution. We present a new mathematical representation for regular distributions called PITFALLS and then discuss algorithms for redistribution based on this representation. One of the significant contributions of this work is being able to handle arbitrary source and target processor sets while performing redistribution. Another important contribution is the ability to handle an arbitrary number of dimensions for the array involved in the redistribution in a scalable manner. Our implementation of these techniques is based on an MPI-like communication library. The results presented show the low overheads for our redistribution algorithm as compared to naive runtime methods.

Ramaswamy, Shankar↗

Shaping Diffraction-Grating Grooves to Optimize Efficiency

A method of shaping diffraction-grating grooves to optimize the spectral efficiency, spectral range, and image quality of a spectral imaging instrument is under development. The method is based on the use of an advanced design algorithm to determine the possibly complex shape of grooves needed to obtain a desired efficiency-versus-wavelength response (see figure). Then electron- beam fabrication techniques are used to realize the required groove shape. The method could be used, for example, to make the spectral efficiency of the grating in a given wavelength range proportional to the inverse of the spectral efficiency of a photodetector array so that the overall spectral efficiency of the combination of the grating and the photodetector array would be flat. The method has thus far been applied to one-dimensional gratings only, but in principle, it is also applicable to two-dimensional gratings. The algorithm involves calculations in the spatial-frequency domain. The spatial-frequency spectrum of a grating is represented as a diffraction-order spectral-peak-width function multiplied by an efficiency function for a single grating groove. This representation affords computational efficiency and accuracy by making it possible to consider only the response from one grating groove (one period of the grating), instead of from the whole grating area, in determining the response from the entire grating. This combination of efficiency and accuracy is crucial for future extensions of the algorithm to two-dimensional designs and to designs in which polarization must also be taken into account. The algorithm begins with the definition of target values of relative efficiency that represent the desired spectral response of the grating in certain spectral frequencies calculated from the diffraction order and wavelength. The grating period is divided into a number of cells - typically, 100. The phase contribution from each cell is determined from the phase of the incident electromagnetic wave and the height of the grating surface in the cell. The total contribution from all cells to each target value is then calculated. Then a method known to specialists as the optimum-rotation-angle method is used to adjust the height of each cell so that the total response from all cells is optimized. The computation is iterative and continues until the desired response is obtained. In the event that the desired response is unphysical, the algorithm nevertheless strives to generate a grating-grove profile for which the response approximates the desired one as closely as possible.

Backlund, John↗

Constrained optimization using design of experiment surfaces

An algorithm for solving constrained optimization problems is presented. First, design of experiment techniques are used to survey the design space. After evaluating the objective and constraint functions, as specified by Taguchi orthogonal arrays, analytical models of these functions are generated using a least-squares regression analysis. Next, a nonlinear programming package is used to optimize the analytical model. Based on the optimization information, the design space is reduced so as to close in around the minimum, and the entire procedure is repeated until convergence. An important feature of the algorithm is that function gradients are not required; therefore, for problems in which gradients would have to be estimated using finite-differences the number of function evaluations required for the optimization is significantly reduced, when compared with traditional nonlinear programming techniques. In addition, there is no requirement that the gradients must be smooth and continuous.

Bolt, Marvin Vance↗