A model of program organization for a parallel, data driven computer architecture is presented which integrates the concepts of pure data flow computation with those of ‘multi-thread’ control flow computation. In a data flow organization, data is passed directly from the instruction generating it to those instructions consuming the data, and the availability of input data signals an instruction to execute. In a control flow organization, data is passed indirectly between instructions, via updatable memory cells, and separate control signals cause an instruction to execute. This program organization is presented at several levels of abstraction, progressing from the ‘Combined’ model of computation, through a discussion of the problems of program representation (e.g. iteration, procedures and resource managers) in data driven computers, to a logical description of a computer architecture implementing the organization. Our objective in developing this Combined model is to investigation how the data flow and the control flow concepts interact.